@eggjs/dal-plugin 4.0.0-beta.35 → 4.0.0-beta.36
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/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/decorate.js +10 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/decorateMetadata.js +7 -0
- package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/decorateParam.js +9 -0
- package/dist/app.d.ts +13 -9
- package/dist/app.js +32 -34
- package/dist/index.d.ts +10 -9
- package/dist/index.js +10 -9
- package/dist/lib/DalModuleLoadUnitHook.d.ts +13 -9
- package/dist/lib/DalModuleLoadUnitHook.js +37 -41
- package/dist/lib/DalTableEggPrototypeHook.d.ts +11 -7
- package/dist/lib/DalTableEggPrototypeHook.js +21 -20
- package/dist/lib/DataSource.d.ts +11 -7
- package/dist/lib/DataSource.js +63 -76
- package/dist/lib/MysqlDataSourceManager.d.ts +14 -10
- package/dist/lib/MysqlDataSourceManager.js +58 -53
- package/dist/lib/SqlMapManager.d.ts +12 -8
- package/dist/lib/SqlMapManager.js +25 -22
- package/dist/lib/TableModelManager.d.ts +12 -8
- package/dist/lib/TableModelManager.js +25 -22
- package/dist/lib/TransactionPrototypeHook.d.ts +12 -8
- package/dist/lib/TransactionPrototypeHook.js +47 -53
- package/dist/lib/TransactionalAOP.d.ts +13 -9
- package/dist/lib/TransactionalAOP.js +21 -27
- package/dist/types.d.ts +1 -1
- package/dist/types.js +3 -2
- package/package.json +53 -57
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region \0@oxc-project+runtime@0.103.0/helpers/decorate.js
|
|
2
|
+
function __decorate(decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
//#endregion
|
|
10
|
+
export { __decorate };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
//#region \0@oxc-project+runtime@0.103.0/helpers/decorateMetadata.js
|
|
2
|
+
function __decorateMetadata(k, v) {
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
//#endregion
|
|
7
|
+
export { __decorateMetadata };
|
package/dist/app.d.ts
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { Application, ILifecycleBoot } from "egg";
|
|
2
|
+
|
|
3
|
+
//#region src/app.d.ts
|
|
4
|
+
declare class DalAppBootHook implements ILifecycleBoot {
|
|
5
|
+
private readonly app;
|
|
6
|
+
private dalTableEggPrototypeHook;
|
|
7
|
+
private dalModuleLoadUnitHook;
|
|
8
|
+
private transactionPrototypeHook;
|
|
9
|
+
constructor(app: Application);
|
|
10
|
+
configWillLoad(): void;
|
|
11
|
+
beforeClose(): Promise<void>;
|
|
10
12
|
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { DalAppBootHook as default };
|
package/dist/app.js
CHANGED
|
@@ -1,38 +1,36 @@
|
|
|
1
|
-
import { DalModuleLoadUnitHook } from "./lib/DalModuleLoadUnitHook.js";
|
|
2
|
-
import { DalTableEggPrototypeHook } from "./lib/DalTableEggPrototypeHook.js";
|
|
3
1
|
import { MysqlDataSourceManager } from "./lib/MysqlDataSourceManager.js";
|
|
2
|
+
import { DalModuleLoadUnitHook } from "./lib/DalModuleLoadUnitHook.js";
|
|
4
3
|
import { SqlMapManager } from "./lib/SqlMapManager.js";
|
|
5
4
|
import { TableModelManager } from "./lib/TableModelManager.js";
|
|
5
|
+
import { DalTableEggPrototypeHook } from "./lib/DalTableEggPrototypeHook.js";
|
|
6
6
|
import { TransactionPrototypeHook } from "./lib/TransactionPrototypeHook.js";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFN0UsTUFBTSxDQUFDLE9BQU8sT0FBTyxjQUFjO0lBQ2hCLEdBQUcsQ0FBYztJQUMxQix3QkFBd0IsQ0FBMkI7SUFDbkQscUJBQXFCLENBQXdCO0lBQzdDLHdCQUF3QixDQUEyQjtJQUUzRCxZQUFZLEdBQWdCO1FBQzFCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDcEcsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5RSxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RHLElBQUksQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVztRQUNmLElBQUksSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDN0UsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN4QyxhQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQy9CLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0NBQ0YifQ==
|
|
7
|
+
|
|
8
|
+
//#region src/app.ts
|
|
9
|
+
var DalAppBootHook = class {
|
|
10
|
+
app;
|
|
11
|
+
dalTableEggPrototypeHook;
|
|
12
|
+
dalModuleLoadUnitHook;
|
|
13
|
+
transactionPrototypeHook;
|
|
14
|
+
constructor(app) {
|
|
15
|
+
this.app = app;
|
|
16
|
+
}
|
|
17
|
+
configWillLoad() {
|
|
18
|
+
this.dalModuleLoadUnitHook = new DalModuleLoadUnitHook(this.app.config.env, this.app.moduleConfigs);
|
|
19
|
+
this.dalTableEggPrototypeHook = new DalTableEggPrototypeHook(this.app.logger);
|
|
20
|
+
this.transactionPrototypeHook = new TransactionPrototypeHook(this.app.moduleConfigs, this.app.logger);
|
|
21
|
+
this.app.eggPrototypeLifecycleUtil.registerLifecycle(this.dalTableEggPrototypeHook);
|
|
22
|
+
this.app.eggPrototypeLifecycleUtil.registerLifecycle(this.transactionPrototypeHook);
|
|
23
|
+
this.app.loadUnitLifecycleUtil.registerLifecycle(this.dalModuleLoadUnitHook);
|
|
24
|
+
}
|
|
25
|
+
async beforeClose() {
|
|
26
|
+
if (this.dalTableEggPrototypeHook) this.app.eggPrototypeLifecycleUtil.deleteLifecycle(this.dalTableEggPrototypeHook);
|
|
27
|
+
if (this.dalModuleLoadUnitHook) this.app.loadUnitLifecycleUtil.deleteLifecycle(this.dalModuleLoadUnitHook);
|
|
28
|
+
if (this.transactionPrototypeHook) this.app.eggPrototypeLifecycleUtil.deleteLifecycle(this.transactionPrototypeHook);
|
|
29
|
+
MysqlDataSourceManager.instance.clear();
|
|
30
|
+
SqlMapManager.instance.clear();
|
|
31
|
+
TableModelManager.instance.clear();
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
//#endregion
|
|
36
|
+
export { DalAppBootHook as default };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import "./types.js";
|
|
2
|
+
import { DalModuleLoadUnitHook } from "./lib/DalModuleLoadUnitHook.js";
|
|
3
|
+
import { DalTableEggPrototypeHook } from "./lib/DalTableEggPrototypeHook.js";
|
|
4
|
+
import { TransactionalAOP, TransactionalParams } from "./lib/TransactionalAOP.js";
|
|
5
|
+
import { DataSourceDelegate } from "./lib/DataSource.js";
|
|
6
|
+
import { MysqlDataSourceManager } from "./lib/MysqlDataSourceManager.js";
|
|
7
|
+
import { SqlMapManager } from "./lib/SqlMapManager.js";
|
|
8
|
+
import { TableModelManager } from "./lib/TableModelManager.js";
|
|
9
|
+
import { TransactionPrototypeHook } from "./lib/TransactionPrototypeHook.js";
|
|
10
|
+
export { DalModuleLoadUnitHook, DalTableEggPrototypeHook, DataSourceDelegate, MysqlDataSourceManager, SqlMapManager, TableModelManager, TransactionPrototypeHook, TransactionalAOP, TransactionalParams };
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import { MysqlDataSourceManager } from "./lib/MysqlDataSourceManager.js";
|
|
2
|
+
import { DalModuleLoadUnitHook } from "./lib/DalModuleLoadUnitHook.js";
|
|
3
|
+
import { SqlMapManager } from "./lib/SqlMapManager.js";
|
|
4
|
+
import { TableModelManager } from "./lib/TableModelManager.js";
|
|
5
|
+
import { DalTableEggPrototypeHook } from "./lib/DalTableEggPrototypeHook.js";
|
|
6
|
+
import { TransactionalAOP } from "./lib/TransactionalAOP.js";
|
|
7
|
+
import { TransactionPrototypeHook } from "./lib/TransactionPrototypeHook.js";
|
|
1
8
|
import "./types.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
export * from "./lib/MysqlDataSourceManager.js";
|
|
6
|
-
export * from "./lib/SqlMapManager.js";
|
|
7
|
-
export * from "./lib/TableModelManager.js";
|
|
8
|
-
export * from "./lib/TransactionalAOP.js";
|
|
9
|
-
export * from "./lib/TransactionPrototypeHook.js";
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxZQUFZLENBQUM7QUFFcEIsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1DQUFtQyxDQUFDIn0=
|
|
9
|
+
import { DataSourceDelegate } from "./lib/DataSource.js";
|
|
10
|
+
|
|
11
|
+
export { DalModuleLoadUnitHook, DalTableEggPrototypeHook, DataSourceDelegate, MysqlDataSourceManager, SqlMapManager, TableModelManager, TransactionPrototypeHook, TransactionalAOP };
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { Logger, ModuleConfigHolder } from "@eggjs/tegg-types";
|
|
2
|
+
import { LifecycleHook } from "@eggjs/lifecycle";
|
|
3
|
+
import { LoadUnit, LoadUnitLifecycleContext } from "@eggjs/metadata";
|
|
4
|
+
|
|
5
|
+
//#region src/lib/DalModuleLoadUnitHook.d.ts
|
|
6
|
+
declare class DalModuleLoadUnitHook implements LifecycleHook<LoadUnitLifecycleContext, LoadUnit> {
|
|
7
|
+
private readonly moduleConfigs;
|
|
8
|
+
private readonly env;
|
|
9
|
+
private readonly logger?;
|
|
10
|
+
constructor(env: string, moduleConfigs: Record<string, ModuleConfigHolder>, logger?: Logger);
|
|
11
|
+
preCreate(_: LoadUnitLifecycleContext, loadUnit: LoadUnit): Promise<void>;
|
|
10
12
|
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { DalModuleLoadUnitHook };
|
|
@@ -1,42 +1,38 @@
|
|
|
1
|
-
import { DatabaseForker } from '@eggjs/dal-runtime';
|
|
2
1
|
import { MysqlDataSourceManager } from "./MysqlDataSourceManager.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGFsTW9kdWxlTG9hZFVuaXRIb29rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9EYWxNb2R1bGVMb2FkVW5pdEhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBMEIsTUFBTSxvQkFBb0IsQ0FBQztBQUs1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVyRSxNQUFNLE9BQU8scUJBQXFCO0lBQ2YsYUFBYSxDQUFxQztJQUNsRCxHQUFHLENBQVM7SUFDWixNQUFNLENBQVU7SUFFakMsWUFBWSxHQUFXLEVBQUUsYUFBaUQsRUFBRSxNQUFlO1FBQ3pGLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBMkIsRUFBRSxRQUFrQjtRQUM3RCxNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxrQkFBa0I7WUFBRSxPQUFPO1FBQ2hDLE1BQU0sZ0JBQWdCLEdBQW1ELGtCQUFrQixDQUFDLE1BQWM7YUFDdkcsVUFBVSxDQUFDO1FBQ2QsSUFBSSxDQUFDLGdCQUFnQjtZQUFFLE9BQU87UUFDOUIsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNmLE1BQU0sQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDNUQsTUFBTSxpQkFBaUIsR0FBRztnQkFDeEIsR0FBRyxNQUFNO2dCQUNULElBQUk7Z0JBQ0osTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2FBQ3BCLENBQUM7WUFDRixNQUFNLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLENBQUM7WUFDL0QsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztnQkFDeEIsTUFBTSxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6QyxDQUFDO1lBRUQsSUFBSSxDQUFDO2dCQUNILE1BQU0sc0JBQXNCLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixDQUFDLENBQUM7WUFDakcsQ0FBQztZQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ1gsSUFBSSxDQUFDLFlBQVksS0FBSyxFQUFFLENBQUM7b0JBQ3ZCLENBQUMsQ0FBQyxPQUFPLEdBQUcsaUJBQWlCLFFBQVEsQ0FBQyxJQUFJLGVBQWUsSUFBSSxZQUFZLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDdkYsQ0FBQztnQkFDRCxNQUFNLENBQUMsQ0FBQztZQUNWLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztDQUNGIn0=
|
|
2
|
+
import { DatabaseForker } from "@eggjs/dal-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/DalModuleLoadUnitHook.ts
|
|
5
|
+
var DalModuleLoadUnitHook = class {
|
|
6
|
+
moduleConfigs;
|
|
7
|
+
env;
|
|
8
|
+
logger;
|
|
9
|
+
constructor(env, moduleConfigs, logger) {
|
|
10
|
+
this.env = env;
|
|
11
|
+
this.moduleConfigs = moduleConfigs;
|
|
12
|
+
this.logger = logger;
|
|
13
|
+
}
|
|
14
|
+
async preCreate(_, loadUnit) {
|
|
15
|
+
const moduleConfigHolder = this.moduleConfigs[loadUnit.name];
|
|
16
|
+
if (!moduleConfigHolder) return;
|
|
17
|
+
const dataSourceConfig = moduleConfigHolder.config.dataSource;
|
|
18
|
+
if (!dataSourceConfig) return;
|
|
19
|
+
await Promise.all(Object.entries(dataSourceConfig).map(async ([name, config]) => {
|
|
20
|
+
const dataSourceOptions = {
|
|
21
|
+
...config,
|
|
22
|
+
name,
|
|
23
|
+
logger: this.logger
|
|
24
|
+
};
|
|
25
|
+
const forker = new DatabaseForker(this.env, dataSourceOptions);
|
|
26
|
+
if (forker.shouldFork()) await forker.forkDb(loadUnit.unitPath);
|
|
27
|
+
try {
|
|
28
|
+
await MysqlDataSourceManager.instance.createDataSource(loadUnit.name, name, dataSourceOptions);
|
|
29
|
+
} catch (e) {
|
|
30
|
+
if (e instanceof Error) e.message = `create module ${loadUnit.name} datasource ${name} failed: ${e.message}`;
|
|
31
|
+
throw e;
|
|
32
|
+
}
|
|
33
|
+
}));
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
//#endregion
|
|
38
|
+
export { DalModuleLoadUnitHook };
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { Logger } from "@eggjs/tegg-types";
|
|
2
|
+
import { LifecycleHook } from "@eggjs/lifecycle";
|
|
3
|
+
import { EggPrototype, EggPrototypeLifecycleContext } from "@eggjs/metadata";
|
|
4
|
+
|
|
5
|
+
//#region src/lib/DalTableEggPrototypeHook.d.ts
|
|
6
|
+
declare class DalTableEggPrototypeHook implements LifecycleHook<EggPrototypeLifecycleContext, EggPrototype> {
|
|
7
|
+
private readonly logger;
|
|
8
|
+
constructor(logger: Logger);
|
|
9
|
+
preCreate(ctx: EggPrototypeLifecycleContext): Promise<void>;
|
|
8
10
|
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { DalTableEggPrototypeHook };
|
|
@@ -1,22 +1,23 @@
|
|
|
1
|
-
import { DaoInfoUtil, TableModel } from '@eggjs/dal-decorator';
|
|
2
|
-
import { SqlMapLoader } from '@eggjs/dal-runtime';
|
|
3
1
|
import { SqlMapManager } from "./SqlMapManager.js";
|
|
4
2
|
import { TableModelManager } from "./TableModelManager.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
3
|
+
import { SqlMapLoader } from "@eggjs/dal-runtime";
|
|
4
|
+
import { DaoInfoUtil, TableModel } from "@eggjs/dal-decorator";
|
|
5
|
+
|
|
6
|
+
//#region src/lib/DalTableEggPrototypeHook.ts
|
|
7
|
+
var DalTableEggPrototypeHook = class {
|
|
8
|
+
logger;
|
|
9
|
+
constructor(logger) {
|
|
10
|
+
this.logger = logger;
|
|
11
|
+
}
|
|
12
|
+
async preCreate(ctx) {
|
|
13
|
+
if (!DaoInfoUtil.getIsDao(ctx.clazz)) return;
|
|
14
|
+
const tableClazz = ctx.clazz.clazzModel;
|
|
15
|
+
const tableModel = TableModel.build(tableClazz);
|
|
16
|
+
TableModelManager.instance.set(ctx.loadUnit.name, tableModel);
|
|
17
|
+
const sqlMap = new SqlMapLoader(tableModel, ctx.clazz, this.logger).load();
|
|
18
|
+
SqlMapManager.instance.set(ctx.loadUnit.name, sqlMap);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
//#endregion
|
|
23
|
+
export { DalTableEggPrototypeHook };
|
package/dist/lib/DataSource.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { DataSource } from
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { TransactionalAOP } from "./TransactionalAOP.js";
|
|
2
|
+
import { DataSource } from "@eggjs/dal-runtime";
|
|
3
|
+
import { ObjectInfo } from "@eggjs/core-decorator";
|
|
4
|
+
|
|
5
|
+
//#region src/lib/DataSource.d.ts
|
|
6
|
+
declare class DataSourceDelegate<T> extends DataSource<T> {
|
|
7
|
+
private transactionalAOP;
|
|
8
|
+
objInfo: ObjectInfo;
|
|
9
|
+
constructor(transactionalAOP: TransactionalAOP, objInfo: ObjectInfo);
|
|
8
10
|
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { DataSourceDelegate };
|
package/dist/lib/DataSource.js
CHANGED
|
@@ -1,83 +1,70 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
-
};
|
|
13
|
-
import assert from 'node:assert';
|
|
14
|
-
import { AccessLevel, Inject, LoadUnitNameQualifierAttribute, MultiInstanceInfo, MultiInstanceProto, ObjectInitType, } from '@eggjs/core-decorator';
|
|
15
|
-
import { DataSourceInjectName, DataSourceQualifierAttribute, TableInfoUtil, TableModel } from '@eggjs/dal-decorator';
|
|
16
|
-
import { DataSource } from '@eggjs/dal-runtime';
|
|
17
|
-
import { ModuleConfigUtil } from '@eggjs/tegg-common-util';
|
|
18
|
-
import { LoaderFactory } from '@eggjs/tegg-loader';
|
|
19
|
-
import { EggLoadUnitType } from '@eggjs/tegg-types';
|
|
20
1
|
import { MysqlDataSourceManager } from "./MysqlDataSourceManager.js";
|
|
21
2
|
import { SqlMapManager } from "./SqlMapManager.js";
|
|
22
3
|
import { TableModelManager } from "./TableModelManager.js";
|
|
4
|
+
import { __decorate } from "../_virtual/_@oxc-project_runtime@0.103.0/helpers/decorate.js";
|
|
23
5
|
import { TransactionalAOP } from "./TransactionalAOP.js";
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
6
|
+
import { __decorateMetadata } from "../_virtual/_@oxc-project_runtime@0.103.0/helpers/decorateMetadata.js";
|
|
7
|
+
import { __decorateParam } from "../_virtual/_@oxc-project_runtime@0.103.0/helpers/decorateParam.js";
|
|
8
|
+
import { DataSource } from "@eggjs/dal-runtime";
|
|
9
|
+
import { DataSourceInjectName, DataSourceQualifierAttribute, TableInfoUtil, TableModel } from "@eggjs/dal-decorator";
|
|
10
|
+
import assert from "node:assert";
|
|
11
|
+
import { EggLoadUnitType } from "@eggjs/tegg-types";
|
|
12
|
+
import { AccessLevel, Inject, LoadUnitNameQualifierAttribute, MultiInstanceInfo, MultiInstanceProto, ObjectInitType } from "@eggjs/core-decorator";
|
|
13
|
+
import { ModuleConfigUtil } from "@eggjs/tegg-common-util";
|
|
14
|
+
import { LoaderFactory } from "@eggjs/tegg-loader";
|
|
15
|
+
|
|
16
|
+
//#region src/lib/DataSource.ts
|
|
17
|
+
var _ref;
|
|
18
|
+
let DataSourceDelegate = class DataSourceDelegate$1 extends DataSource {
|
|
19
|
+
transactionalAOP;
|
|
20
|
+
objInfo;
|
|
21
|
+
constructor(transactionalAOP, objInfo) {
|
|
22
|
+
const dataSourceQualifierValue = objInfo.qualifiers.find((t) => t.attribute === DataSourceQualifierAttribute)?.value;
|
|
23
|
+
assert(dataSourceQualifierValue);
|
|
24
|
+
const [moduleName, dataSource, clazzName] = dataSourceQualifierValue.split(".");
|
|
25
|
+
const tableModel = TableModelManager.instance.get(moduleName, clazzName);
|
|
26
|
+
assert(tableModel, `not found table ${dataSourceQualifierValue}`);
|
|
27
|
+
const mysqlDataSource = MysqlDataSourceManager.instance.get(moduleName, dataSource);
|
|
28
|
+
assert(mysqlDataSource, `not found dataSource ${dataSource} in module ${moduleName}`);
|
|
29
|
+
const sqlMap = SqlMapManager.instance.get(moduleName, clazzName);
|
|
30
|
+
assert(sqlMap, `not found SqlMap ${clazzName} in module ${moduleName}`);
|
|
31
|
+
super(tableModel, mysqlDataSource, sqlMap);
|
|
32
|
+
this.transactionalAOP = transactionalAOP;
|
|
33
|
+
this.objInfo = objInfo;
|
|
34
|
+
}
|
|
42
35
|
};
|
|
43
36
|
DataSourceDelegate = __decorate([
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}
|
|
75
|
-
return result;
|
|
76
|
-
},
|
|
77
|
-
}),
|
|
78
|
-
__param(0, Inject({ name: 'transactionalAOP' })),
|
|
79
|
-
__param(1, MultiInstanceInfo([DataSourceQualifierAttribute, LoadUnitNameQualifierAttribute])),
|
|
80
|
-
__metadata("design:paramtypes", [TransactionalAOP, Object])
|
|
37
|
+
MultiInstanceProto({
|
|
38
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
39
|
+
initType: ObjectInitType.SINGLETON,
|
|
40
|
+
async getObjects(ctx) {
|
|
41
|
+
const config = ModuleConfigUtil.loadModuleConfigSync(ctx.unitPath);
|
|
42
|
+
const dataSources = Object.keys(config?.dataSource || {});
|
|
43
|
+
const result = [];
|
|
44
|
+
const tableClazzList = (await LoaderFactory.createLoader(ctx.unitPath, EggLoadUnitType.MODULE).load()).filter((t) => {
|
|
45
|
+
return TableInfoUtil.getIsTable(t);
|
|
46
|
+
});
|
|
47
|
+
const dataSourceLength = dataSources.length;
|
|
48
|
+
for (const dataSource of dataSources) {
|
|
49
|
+
const moduleClazzList = tableClazzList.filter((clazz) => {
|
|
50
|
+
const dataSourceName = TableInfoUtil.getTableParams(clazz)?.dataSourceName ?? "default";
|
|
51
|
+
return dataSourceLength === 1 || dataSourceName === dataSource;
|
|
52
|
+
});
|
|
53
|
+
for (const clazz of moduleClazzList) result.push({
|
|
54
|
+
name: DataSourceInjectName,
|
|
55
|
+
qualifiers: [{
|
|
56
|
+
attribute: DataSourceQualifierAttribute,
|
|
57
|
+
value: `${ctx.moduleName}.${dataSource}.${clazz.name}`
|
|
58
|
+
}]
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
}),
|
|
64
|
+
__decorateParam(0, Inject({ name: "transactionalAOP" })),
|
|
65
|
+
__decorateParam(1, MultiInstanceInfo([DataSourceQualifierAttribute, LoadUnitNameQualifierAttribute])),
|
|
66
|
+
__decorateMetadata("design:paramtypes", [typeof (_ref = typeof TransactionalAOP !== "undefined" && TransactionalAOP) === "function" ? _ref : Object, Object])
|
|
81
67
|
], DataSourceDelegate);
|
|
82
|
-
|
|
83
|
-
//#
|
|
68
|
+
|
|
69
|
+
//#endregion
|
|
70
|
+
export { DataSourceDelegate };
|
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import { DataSourceOptions, MysqlDataSource } from "@eggjs/dal-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/MysqlDataSourceManager.d.ts
|
|
4
|
+
declare class MysqlDataSourceManager {
|
|
5
|
+
static instance: MysqlDataSourceManager;
|
|
6
|
+
private readonly dataSourceIndices;
|
|
7
|
+
private readonly dataSources;
|
|
8
|
+
constructor();
|
|
9
|
+
get(moduleName: string, dataSourceName: string): MysqlDataSource | undefined;
|
|
10
|
+
createDataSource(moduleName: string, dataSourceName: string, config: DataSourceOptions): Promise<void>;
|
|
11
|
+
clear(): void;
|
|
12
|
+
static createDataSourceKey(dataSourceOptions: DataSourceOptions): string;
|
|
11
13
|
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { MysqlDataSourceManager };
|
|
@@ -1,53 +1,58 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
|
|
1
|
+
import { MysqlDataSource } from "@eggjs/dal-runtime";
|
|
2
|
+
import crypto from "node:crypto";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/MysqlDataSourceManager.ts
|
|
5
|
+
var MysqlDataSourceManager = class MysqlDataSourceManager {
|
|
6
|
+
static instance = new MysqlDataSourceManager();
|
|
7
|
+
dataSourceIndices;
|
|
8
|
+
dataSources;
|
|
9
|
+
constructor() {
|
|
10
|
+
this.dataSourceIndices = /* @__PURE__ */ new Map();
|
|
11
|
+
this.dataSources = /* @__PURE__ */ new Map();
|
|
12
|
+
}
|
|
13
|
+
get(moduleName, dataSourceName) {
|
|
14
|
+
const dataSourceIndex = this.dataSourceIndices.get(moduleName)?.get(dataSourceName);
|
|
15
|
+
if (dataSourceIndex) return this.dataSources.get(dataSourceIndex);
|
|
16
|
+
}
|
|
17
|
+
async createDataSource(moduleName, dataSourceName, config) {
|
|
18
|
+
const { logger, ...dsConfig } = config || {};
|
|
19
|
+
const dataSourceConfig = {
|
|
20
|
+
...dsConfig,
|
|
21
|
+
name: dataSourceName
|
|
22
|
+
};
|
|
23
|
+
const index = MysqlDataSourceManager.createDataSourceKey(dataSourceConfig);
|
|
24
|
+
let dataSource = this.dataSources.get(index);
|
|
25
|
+
if (!dataSource) {
|
|
26
|
+
dataSource = new MysqlDataSource({
|
|
27
|
+
...dataSourceConfig,
|
|
28
|
+
logger
|
|
29
|
+
});
|
|
30
|
+
this.dataSources.set(index, dataSource);
|
|
31
|
+
}
|
|
32
|
+
let moduleDataSourceIndices = this.dataSourceIndices.get(moduleName);
|
|
33
|
+
if (!moduleDataSourceIndices) {
|
|
34
|
+
moduleDataSourceIndices = /* @__PURE__ */ new Map();
|
|
35
|
+
this.dataSourceIndices.set(moduleName, moduleDataSourceIndices);
|
|
36
|
+
}
|
|
37
|
+
moduleDataSourceIndices.set(dataSourceName, index);
|
|
38
|
+
await dataSource.ready();
|
|
39
|
+
}
|
|
40
|
+
clear() {
|
|
41
|
+
this.dataSourceIndices.clear();
|
|
42
|
+
}
|
|
43
|
+
static createDataSourceKey(dataSourceOptions) {
|
|
44
|
+
const hash = crypto.createHash("md5");
|
|
45
|
+
const keys = Object.keys(dataSourceOptions).sort();
|
|
46
|
+
for (const key of keys) {
|
|
47
|
+
const value = dataSourceOptions[key];
|
|
48
|
+
if (value) {
|
|
49
|
+
hash.update(key);
|
|
50
|
+
hash.update(String(value));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return hash.digest("hex");
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
//#endregion
|
|
58
|
+
export { MysqlDataSourceManager };
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { TableSqlMap } from "@eggjs/dal-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/SqlMapManager.d.ts
|
|
4
|
+
declare class SqlMapManager {
|
|
5
|
+
static instance: SqlMapManager;
|
|
6
|
+
private sqlMaps;
|
|
7
|
+
constructor();
|
|
8
|
+
get(moduleName: string, clazzName: string): TableSqlMap | undefined;
|
|
9
|
+
set(moduleName: string, sqlMap: TableSqlMap): void;
|
|
10
|
+
clear(): void;
|
|
9
11
|
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { SqlMapManager };
|
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
1
|
+
//#region src/lib/SqlMapManager.ts
|
|
2
|
+
var SqlMapManager = class SqlMapManager {
|
|
3
|
+
static instance = new SqlMapManager();
|
|
4
|
+
sqlMaps;
|
|
5
|
+
constructor() {
|
|
6
|
+
this.sqlMaps = /* @__PURE__ */ new Map();
|
|
7
|
+
}
|
|
8
|
+
get(moduleName, clazzName) {
|
|
9
|
+
return this.sqlMaps.get(moduleName)?.get(clazzName);
|
|
10
|
+
}
|
|
11
|
+
set(moduleName, sqlMap) {
|
|
12
|
+
let tables = this.sqlMaps.get(moduleName);
|
|
13
|
+
if (!tables) {
|
|
14
|
+
tables = /* @__PURE__ */ new Map();
|
|
15
|
+
this.sqlMaps.set(moduleName, tables);
|
|
16
|
+
}
|
|
17
|
+
tables.set(sqlMap.name, sqlMap);
|
|
18
|
+
}
|
|
19
|
+
clear() {
|
|
20
|
+
this.sqlMaps.clear();
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
export { SqlMapManager };
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { TableModel } from "@eggjs/dal-decorator";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/TableModelManager.d.ts
|
|
4
|
+
declare class TableModelManager {
|
|
5
|
+
static instance: TableModelManager;
|
|
6
|
+
private tableModels;
|
|
7
|
+
constructor();
|
|
8
|
+
get(moduleName: string, clazzName: string): TableModel | undefined;
|
|
9
|
+
set(moduleName: string, tableModel: TableModel): void;
|
|
10
|
+
clear(): void;
|
|
9
11
|
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { TableModelManager };
|
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
1
|
+
//#region src/lib/TableModelManager.ts
|
|
2
|
+
var TableModelManager = class TableModelManager {
|
|
3
|
+
static instance = new TableModelManager();
|
|
4
|
+
tableModels;
|
|
5
|
+
constructor() {
|
|
6
|
+
this.tableModels = /* @__PURE__ */ new Map();
|
|
7
|
+
}
|
|
8
|
+
get(moduleName, clazzName) {
|
|
9
|
+
return this.tableModels.get(moduleName)?.get(clazzName);
|
|
10
|
+
}
|
|
11
|
+
set(moduleName, tableModel) {
|
|
12
|
+
let tables = this.tableModels.get(moduleName);
|
|
13
|
+
if (!tables) {
|
|
14
|
+
tables = /* @__PURE__ */ new Map();
|
|
15
|
+
this.tableModels.set(moduleName, tables);
|
|
16
|
+
}
|
|
17
|
+
tables.set(tableModel.clazz.name, tableModel);
|
|
18
|
+
}
|
|
19
|
+
clear() {
|
|
20
|
+
this.tableModels.clear();
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
export { TableModelManager };
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { Logger, ModuleConfigHolder } from "@eggjs/tegg-types";
|
|
2
|
+
import { LifecycleHook } from "@eggjs/lifecycle";
|
|
3
|
+
import { EggPrototype, EggPrototypeLifecycleContext } from "@eggjs/metadata";
|
|
4
|
+
|
|
5
|
+
//#region src/lib/TransactionPrototypeHook.d.ts
|
|
6
|
+
declare class TransactionPrototypeHook implements LifecycleHook<EggPrototypeLifecycleContext, EggPrototype> {
|
|
7
|
+
private readonly moduleConfigs;
|
|
8
|
+
private readonly logger;
|
|
9
|
+
constructor(moduleConfigs: Record<string, ModuleConfigHolder>, logger: Logger);
|
|
10
|
+
preCreate(ctx: EggPrototypeLifecycleContext): Promise<void>;
|
|
9
11
|
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { TransactionPrototypeHook };
|
|
@@ -1,55 +1,49 @@
|
|
|
1
|
-
import assert from 'node:assert';
|
|
2
|
-
import { Pointcut } from '@eggjs/aop-decorator';
|
|
3
|
-
import { PropagationType } from '@eggjs/tegg-types';
|
|
4
|
-
import { TransactionMetaBuilder } from '@eggjs/transaction-decorator';
|
|
5
1
|
import { MysqlDataSourceManager } from "./MysqlDataSourceManager.js";
|
|
6
2
|
import { TransactionalAOP } from "./TransactionalAOP.js";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25Qcm90b3R5cGVIb29rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9UcmFuc2FjdGlvblByb3RvdHlwZUhvb2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sYUFBYSxDQUFDO0FBRWpDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUloRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLGdCQUFnQixFQUE0QixNQUFNLHVCQUF1QixDQUFDO0FBRW5GLE1BQU0sT0FBTyx3QkFBd0I7SUFDbEIsYUFBYSxDQUFxQztJQUNsRCxNQUFNLENBQVM7SUFFaEMsWUFBWSxhQUFpRCxFQUFFLE1BQWM7UUFDM0UsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVNLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBaUM7UUFDdEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEQsTUFBTSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEQsSUFBSSx1QkFBdUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdkMsT0FBTztRQUNULENBQUM7UUFDRCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNyQyxLQUFLLE1BQU0sbUJBQW1CLElBQUksdUJBQXVCLEVBQUUsQ0FBQztZQUMxRCxNQUFNLFNBQVMsR0FBRyxHQUFHLFVBQVUsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMxRixNQUFNLGlCQUFpQixHQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBYyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUM7WUFFNUYsSUFBSSxjQUFzQixDQUFDO1lBQzNCLElBQUksbUJBQW1CLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3ZDLE1BQU0sQ0FDSixpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsRUFDckQsVUFBVSxTQUFTLHlCQUF5QixtQkFBbUIsQ0FBQyxjQUFjLGFBQWEsQ0FDNUYsQ0FBQztnQkFDRixjQUFjLEdBQUcsbUJBQW1CLENBQUMsY0FBYyxDQUFDO2dCQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsbUJBQW1CLENBQUMsY0FBYyxlQUFlLFNBQVMsRUFBRSxDQUFDLENBQUM7WUFDcEcsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDbkQsSUFBSSxXQUFXLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUM3QixjQUFjLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsQyxDQUFDO3FCQUFNLENBQUM7b0JBQ04sTUFBTSxJQUFJLEtBQUssQ0FDYixVQUFVLFNBQVMscUNBQXFDLFVBQVUsdURBQXVELENBQzFILENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywwQkFBMEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxjQUFjLFNBQVMsRUFBRSxDQUFDLENBQUM7WUFDdEYsQ0FBQztZQUNELE1BQU0sWUFBWSxHQUF3QjtnQkFDeEMsV0FBVyxFQUFFLG1CQUFtQixDQUFDLFdBQVc7Z0JBQzVDLGdCQUFnQixFQUFFLEdBQUcsRUFBRTtvQkFDckIsTUFBTSxlQUFlLEdBQUcsc0JBQXNCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsY0FBYyxDQUFDLENBQUM7b0JBQ3hGLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQzt3QkFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLFNBQVMseUJBQXlCLGNBQWMsRUFBRSxDQUFDLENBQUM7b0JBQ2hGLENBQUM7b0JBQ0QsT0FBTyxlQUFlLENBQUM7Z0JBQ3pCLENBQUM7YUFDRixDQUFDO1lBQ0YsTUFBTSxDQUNKLFlBQVksQ0FBQyxXQUFXLEtBQUssZUFBZSxDQUFDLFFBQVEsRUFDckQseURBQXlELENBQzFELENBQUM7WUFDRixRQUFRLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFFLEdBQUcsQ0FBQyxLQUFhLENBQUMsU0FBUyxFQUFFLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pHLENBQUM7SUFDSCxDQUFDO0NBQ0YifQ==
|
|
3
|
+
import assert from "node:assert";
|
|
4
|
+
import { Pointcut } from "@eggjs/aop-decorator";
|
|
5
|
+
import { PropagationType } from "@eggjs/tegg-types";
|
|
6
|
+
import { TransactionMetaBuilder } from "@eggjs/transaction-decorator";
|
|
7
|
+
|
|
8
|
+
//#region src/lib/TransactionPrototypeHook.ts
|
|
9
|
+
var TransactionPrototypeHook = class {
|
|
10
|
+
moduleConfigs;
|
|
11
|
+
logger;
|
|
12
|
+
constructor(moduleConfigs, logger) {
|
|
13
|
+
this.moduleConfigs = moduleConfigs;
|
|
14
|
+
this.logger = logger;
|
|
15
|
+
}
|
|
16
|
+
async preCreate(ctx) {
|
|
17
|
+
const transactionMetadataList = new TransactionMetaBuilder(ctx.clazz).build();
|
|
18
|
+
if (transactionMetadataList.length < 1) return;
|
|
19
|
+
const moduleName = ctx.loadUnit.name;
|
|
20
|
+
for (const transactionMetadata of transactionMetadataList) {
|
|
21
|
+
const clazzName = `${moduleName}.${ctx.clazz.name}.${String(transactionMetadata.method)}`;
|
|
22
|
+
const datasourceConfigs = (this.moduleConfigs[moduleName]?.config)?.dataSource || {};
|
|
23
|
+
let datasourceName;
|
|
24
|
+
if (transactionMetadata.datasourceName) {
|
|
25
|
+
assert(datasourceConfigs[transactionMetadata.datasourceName], `method ${clazzName} specified datasource ${transactionMetadata.datasourceName} not exists`);
|
|
26
|
+
datasourceName = transactionMetadata.datasourceName;
|
|
27
|
+
this.logger.info(`use datasource [${transactionMetadata.datasourceName}] for class ${clazzName}`);
|
|
28
|
+
} else {
|
|
29
|
+
const dataSources = Object.keys(datasourceConfigs);
|
|
30
|
+
if (dataSources.length === 1) datasourceName = dataSources[0];
|
|
31
|
+
else throw new Error(`method ${clazzName} not specified datasource, module ${moduleName} has multi datasource, should specify datasource name`);
|
|
32
|
+
this.logger.info(`use default datasource ${dataSources[0]} for class ${clazzName}`);
|
|
33
|
+
}
|
|
34
|
+
const adviceParams = {
|
|
35
|
+
propagation: transactionMetadata.propagation,
|
|
36
|
+
dataSourceGetter: () => {
|
|
37
|
+
const mysqlDataSource = MysqlDataSourceManager.instance.get(moduleName, datasourceName);
|
|
38
|
+
if (!mysqlDataSource) throw new Error(`method ${clazzName} not found datasource ${datasourceName}`);
|
|
39
|
+
return mysqlDataSource;
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
assert(adviceParams.propagation === PropagationType.REQUIRED, "Transactional propagation only support required for now");
|
|
43
|
+
Pointcut(TransactionalAOP, { adviceParams })(ctx.clazz.prototype, transactionMetadata.method);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
//#endregion
|
|
49
|
+
export { TransactionPrototypeHook };
|
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { MysqlDataSource } from "@eggjs/dal-runtime";
|
|
2
|
+
import { AdviceContext, IAdvice } from "@eggjs/aop-decorator";
|
|
3
|
+
import { PropagationType } from "@eggjs/tegg-types";
|
|
4
|
+
import { EggProtoImplClass } from "@eggjs/core-decorator";
|
|
5
|
+
|
|
6
|
+
//#region src/lib/TransactionalAOP.d.ts
|
|
7
|
+
interface TransactionalParams {
|
|
8
|
+
propagation: PropagationType;
|
|
9
|
+
dataSourceGetter: () => MysqlDataSource;
|
|
8
10
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
declare class TransactionalAOP implements IAdvice<EggProtoImplClass, TransactionalParams> {
|
|
12
|
+
around(ctx: AdviceContext<EggProtoImplClass, TransactionalParams>, next: () => Promise<any>): Promise<void>;
|
|
11
13
|
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { TransactionalAOP, TransactionalParams };
|
|
@@ -1,28 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { __decorate } from "../_virtual/_@oxc-project_runtime@0.103.0/helpers/decorate.js";
|
|
2
|
+
import { MysqlDataSource } from "@eggjs/dal-runtime";
|
|
3
|
+
import { Advice } from "@eggjs/aop-decorator";
|
|
4
|
+
import { PropagationType } from "@eggjs/tegg-types";
|
|
5
|
+
import { AccessLevel, ObjectInitType } from "@eggjs/core-decorator";
|
|
6
|
+
|
|
7
|
+
//#region src/lib/TransactionalAOP.ts
|
|
8
|
+
let TransactionalAOP = class TransactionalAOP$1 {
|
|
9
|
+
async around(ctx, next) {
|
|
10
|
+
const { propagation, dataSourceGetter } = ctx.adviceParams;
|
|
11
|
+
const dataSource = dataSourceGetter();
|
|
12
|
+
if (propagation === PropagationType.ALWAYS_NEW) return await dataSource.beginTransactionScope(next);
|
|
13
|
+
return await dataSource.beginTransactionScope(next);
|
|
14
|
+
}
|
|
6
15
|
};
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const dataSource = dataSourceGetter();
|
|
15
|
-
if (propagation === PropagationType.ALWAYS_NEW) {
|
|
16
|
-
return await dataSource.beginTransactionScope(next);
|
|
17
|
-
}
|
|
18
|
-
return await dataSource.beginTransactionScope(next);
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
TransactionalAOP = __decorate([
|
|
22
|
-
Advice({
|
|
23
|
-
accessLevel: AccessLevel.PUBLIC,
|
|
24
|
-
initType: ObjectInitType.SINGLETON,
|
|
25
|
-
})
|
|
26
|
-
], TransactionalAOP);
|
|
27
|
-
export { TransactionalAOP };
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25hbEFPUC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvVHJhbnNhY3Rpb25hbEFPUC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFvQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQTBCLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFXN0MsSUFBTSxnQkFBZ0IsR0FBdEIsTUFBTSxnQkFBZ0I7SUFDcEIsS0FBSyxDQUFDLE1BQU0sQ0FDakIsR0FBMEQsRUFDMUQsSUFBd0I7UUFFeEIsTUFBTSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLEdBQUcsQ0FBQyxZQUFhLENBQUM7UUFDNUQsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUN0QyxJQUFJLFdBQVcsS0FBSyxlQUFlLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDL0MsT0FBTyxNQUFNLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RCxDQUFDO1FBQ0QsT0FBTyxNQUFNLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0YsQ0FBQTtBQVpZLGdCQUFnQjtJQUo1QixNQUFNLENBQUM7UUFDTixXQUFXLEVBQUUsV0FBVyxDQUFDLE1BQU07UUFDL0IsUUFBUSxFQUFFLGNBQWMsQ0FBQyxTQUFTO0tBQ25DLENBQUM7R0FDVyxnQkFBZ0IsQ0FZNUIifQ==
|
|
16
|
+
TransactionalAOP = __decorate([Advice({
|
|
17
|
+
accessLevel: AccessLevel.PUBLIC,
|
|
18
|
+
initType: ObjectInitType.SINGLETON
|
|
19
|
+
})], TransactionalAOP);
|
|
20
|
+
|
|
21
|
+
//#endregion
|
|
22
|
+
export { TransactionalAOP };
|
package/dist/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import "@eggjs/tegg-plugin/types";
|
package/dist/types.js
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import "@eggjs/tegg-plugin/types";
|
|
2
|
+
|
|
3
|
+
export { };
|
package/package.json
CHANGED
|
@@ -1,29 +1,31 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/dal-plugin",
|
|
3
|
-
"
|
|
4
|
-
"name": "teggDal",
|
|
5
|
-
"strict": false,
|
|
6
|
-
"dependencies": [
|
|
7
|
-
"tegg"
|
|
8
|
-
]
|
|
9
|
-
},
|
|
10
|
-
"eggModule": {
|
|
11
|
-
"name": "teggDal"
|
|
12
|
-
},
|
|
13
|
-
"version": "4.0.0-beta.35",
|
|
3
|
+
"version": "4.0.0-beta.36",
|
|
14
4
|
"description": "dal plugin for egg",
|
|
15
5
|
"keywords": [
|
|
6
|
+
"dal",
|
|
16
7
|
"egg",
|
|
17
|
-
"plugin",
|
|
18
|
-
"typescript",
|
|
19
8
|
"module",
|
|
9
|
+
"plugin",
|
|
20
10
|
"tegg",
|
|
21
|
-
"
|
|
11
|
+
"typescript"
|
|
22
12
|
],
|
|
13
|
+
"homepage": "https://github.com/eggjs/egg/tree/next/tegg/plugin/dal",
|
|
14
|
+
"bugs": {
|
|
15
|
+
"url": "https://github.com/eggjs/egg/issues"
|
|
16
|
+
},
|
|
17
|
+
"repository": {
|
|
18
|
+
"type": "git",
|
|
19
|
+
"url": "git+https://github.com/eggjs/egg.git",
|
|
20
|
+
"directory": "tegg/plugin/dal"
|
|
21
|
+
},
|
|
23
22
|
"files": [
|
|
24
23
|
"dist"
|
|
25
24
|
],
|
|
26
25
|
"type": "module",
|
|
26
|
+
"main": "./dist/index.js",
|
|
27
|
+
"module": "./dist/index.js",
|
|
28
|
+
"types": "./dist/index.d.ts",
|
|
27
29
|
"exports": {
|
|
28
30
|
".": "./dist/index.js",
|
|
29
31
|
"./app": "./dist/app.js",
|
|
@@ -38,57 +40,51 @@
|
|
|
38
40
|
"./types": "./dist/types.js",
|
|
39
41
|
"./package.json": "./package.json"
|
|
40
42
|
},
|
|
41
|
-
"
|
|
42
|
-
|
|
43
|
-
"url": "https://github.com/eggjs/egg/issues"
|
|
44
|
-
},
|
|
45
|
-
"repository": {
|
|
46
|
-
"type": "git",
|
|
47
|
-
"url": "git+https://github.com/eggjs/egg.git",
|
|
48
|
-
"directory": "tegg/plugin/dal"
|
|
49
|
-
},
|
|
50
|
-
"engines": {
|
|
51
|
-
"node": ">=22.18.0"
|
|
43
|
+
"publishConfig": {
|
|
44
|
+
"access": "public"
|
|
52
45
|
},
|
|
53
46
|
"dependencies": {
|
|
54
|
-
"@eggjs/aop-decorator": "4.0.0-beta.
|
|
55
|
-
"@eggjs/core-decorator": "4.0.0-beta.
|
|
56
|
-
"@eggjs/dal-
|
|
57
|
-
"@eggjs/
|
|
58
|
-
"@eggjs/
|
|
59
|
-
"@eggjs/
|
|
60
|
-
"@eggjs/
|
|
61
|
-
"@eggjs/
|
|
62
|
-
"@eggjs/
|
|
63
|
-
"@eggjs/
|
|
64
|
-
},
|
|
65
|
-
"peerDependencies": {
|
|
66
|
-
"@eggjs/tegg-plugin": "4.0.0-beta.35",
|
|
67
|
-
"egg": "4.1.0-beta.35"
|
|
47
|
+
"@eggjs/aop-decorator": "4.0.0-beta.36",
|
|
48
|
+
"@eggjs/core-decorator": "4.0.0-beta.36",
|
|
49
|
+
"@eggjs/dal-decorator": "4.0.0-beta.36",
|
|
50
|
+
"@eggjs/metadata": "4.0.0-beta.36",
|
|
51
|
+
"@eggjs/lifecycle": "4.0.0-beta.36",
|
|
52
|
+
"@eggjs/tegg-common-util": "4.0.0-beta.36",
|
|
53
|
+
"@eggjs/dal-runtime": "4.0.0-beta.36",
|
|
54
|
+
"@eggjs/tegg-loader": "4.0.0-beta.36",
|
|
55
|
+
"@eggjs/tegg-types": "4.0.0-beta.36",
|
|
56
|
+
"@eggjs/transaction-decorator": "4.0.0-beta.36"
|
|
68
57
|
},
|
|
69
58
|
"devDependencies": {
|
|
70
|
-
"@types/node": "^24.10.
|
|
59
|
+
"@types/node": "^24.10.2",
|
|
71
60
|
"globby": "^11.0.2",
|
|
72
|
-
"tsdown": "^0.17.0",
|
|
73
61
|
"typescript": "^5.9.3",
|
|
74
|
-
"
|
|
75
|
-
"@eggjs/tegg": "4.0.0-beta.
|
|
76
|
-
"@eggjs/
|
|
77
|
-
"@eggjs/
|
|
78
|
-
"@eggjs/
|
|
79
|
-
"
|
|
80
|
-
"@eggjs/
|
|
81
|
-
"egg": "4.1.0-beta.35"
|
|
62
|
+
"@eggjs/aop-plugin": "4.0.0-beta.36",
|
|
63
|
+
"@eggjs/tegg": "4.0.0-beta.36",
|
|
64
|
+
"@eggjs/tegg-config": "4.0.0-beta.36",
|
|
65
|
+
"@eggjs/tracer": "4.0.0-beta.36",
|
|
66
|
+
"@eggjs/mock": "7.0.0-beta.36",
|
|
67
|
+
"egg": "4.1.0-beta.36",
|
|
68
|
+
"@eggjs/tegg-plugin": "4.0.0-beta.36"
|
|
82
69
|
},
|
|
83
|
-
"
|
|
84
|
-
"
|
|
70
|
+
"peerDependencies": {
|
|
71
|
+
"@eggjs/tegg-plugin": "4.0.0-beta.36",
|
|
72
|
+
"egg": "4.1.0-beta.36"
|
|
73
|
+
},
|
|
74
|
+
"engines": {
|
|
75
|
+
"node": ">=22.18.0"
|
|
76
|
+
},
|
|
77
|
+
"eggModule": {
|
|
78
|
+
"name": "teggDal"
|
|
79
|
+
},
|
|
80
|
+
"eggPlugin": {
|
|
81
|
+
"name": "teggDal",
|
|
82
|
+
"strict": false,
|
|
83
|
+
"dependencies": [
|
|
84
|
+
"tegg"
|
|
85
|
+
]
|
|
85
86
|
},
|
|
86
|
-
"main": "./dist/index.js",
|
|
87
|
-
"module": "./dist/index.js",
|
|
88
|
-
"types": "./dist/index.d.ts",
|
|
89
87
|
"scripts": {
|
|
90
|
-
"
|
|
91
|
-
"build": "tsdown && npm run clean && tsc -p tsconfig.build.json",
|
|
92
|
-
"typecheck": "tsc --noEmit"
|
|
88
|
+
"typecheck": "tsgo --noEmit"
|
|
93
89
|
}
|
|
94
90
|
}
|