@eggjs/tegg-orm-plugin 3.2.4 → 3.3.0
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/app.d.ts +1 -0
- package/app.js +4 -1
- package/lib/LeoricRegister.d.ts +4 -1
- package/lib/LeoricRegister.js +18 -7
- package/lib/ORMLoadUnitHook.d.ts +5 -0
- package/lib/ORMLoadUnitHook.js +20 -0
- package/lib/SingletonORM.d.ts +6 -0
- package/lib/SingletonORM.js +39 -0
- package/package.json +5 -5
- package/typings/index.d.ts +2 -0
package/app.d.ts
CHANGED
package/app.js
CHANGED
|
@@ -10,6 +10,7 @@ const ModelProtoHook_1 = require("./lib/ModelProtoHook");
|
|
|
10
10
|
const tegg_orm_decorator_1 = require("@eggjs/tegg-orm-decorator");
|
|
11
11
|
const ContextModelProto_1 = __importDefault(require("./lib/ContextModelProto"));
|
|
12
12
|
const ContextModeObject_1 = require("./lib/ContextModeObject");
|
|
13
|
+
const ORMLoadUnitHook_1 = require("./lib/ORMLoadUnitHook");
|
|
13
14
|
class OrmAppBootHook {
|
|
14
15
|
constructor(app) {
|
|
15
16
|
this.app = app;
|
|
@@ -19,10 +20,12 @@ class OrmAppBootHook {
|
|
|
19
20
|
this.modelProtoHook = new ModelProtoHook_1.ModelProtoHook(this.modelProtoManager);
|
|
20
21
|
this.app.eggPrototypeCreatorFactory.registerPrototypeCreator(tegg_orm_decorator_1.MODEL_PROTO_IMPL_TYPE, ContextModelProto_1.default.createProto);
|
|
21
22
|
this.app.leoricRegister = this.leoricRegister;
|
|
23
|
+
this.ormLoadUnitHook = new ORMLoadUnitHook_1.ORMLoadUnitHook();
|
|
22
24
|
}
|
|
23
25
|
configWillLoad() {
|
|
24
26
|
this.app.eggPrototypeLifecycleUtil.registerLifecycle(this.modelProtoHook);
|
|
25
27
|
this.app.eggObjectFactory.registerEggObjectCreateMethod(ContextModelProto_1.default, ContextModeObject_1.ContextModeObject.createObject);
|
|
28
|
+
this.app.loadUnitLifecycleUtil.registerLifecycle(this.ormLoadUnitHook);
|
|
26
29
|
}
|
|
27
30
|
configDidLoad() {
|
|
28
31
|
const config = this.app.config.orm;
|
|
@@ -44,4 +47,4 @@ class OrmAppBootHook {
|
|
|
44
47
|
}
|
|
45
48
|
}
|
|
46
49
|
exports.default = OrmAppBootHook;
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsK0RBQTREO0FBQzVELHlEQUFzRDtBQUN0RCwrREFBNEQ7QUFDNUQseURBQXNEO0FBQ3RELGtFQUFrRTtBQUNsRSxnRkFBd0Q7QUFDeEQsK0RBQTREO0FBQzVELDJEQUF3RDtBQUV4RCxNQUFxQixjQUFjO0lBUWpDLFlBQVksR0FBRztRQUNiLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUkscUNBQWlCLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxxQ0FBaUIsRUFBRSxDQUFDO1FBQ2pELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSwrQkFBYyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN6RixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksK0JBQWMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLHdCQUF3QixDQUFDLDBDQUFxQixFQUFFLDJCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25ILElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDOUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGlDQUFlLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsNkJBQTZCLENBQUMsMkJBQWlCLEVBQUUscUNBQWlCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDM0csSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDbkMsSUFBSSxNQUFNLENBQUMsV0FBVyxFQUFFO1lBQ3RCLEtBQUssTUFBTSxVQUFVLElBQUksTUFBTSxDQUFDLFdBQVcsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUM5QztTQUNGO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU87UUFDWCxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3JDLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVc7UUFDZixJQUFJLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUUsQ0FBQztDQUNGO0FBNUNELGlDQTRDQyJ9
|
package/lib/LeoricRegister.d.ts
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import Base from 'sdk-base';
|
|
2
2
|
import { ModelProtoManager } from './ModelProtoManager';
|
|
3
|
-
import { DataSourceManager } from './DataSourceManager';
|
|
3
|
+
import { DataSourceManager, OrmConfig } from './DataSourceManager';
|
|
4
|
+
import Realm from 'leoric';
|
|
4
5
|
import { ModelMetadata } from '@eggjs/tegg-orm-decorator';
|
|
5
6
|
export declare class LeoricRegister extends Base {
|
|
6
7
|
private readonly modelProtoManager;
|
|
7
8
|
private readonly dataSourceManager;
|
|
8
9
|
readonly realmMap: Map<string, any>;
|
|
9
10
|
constructor(modelProtoManager: ModelProtoManager, dataSourceManager: DataSourceManager);
|
|
11
|
+
getConfig(datasource?: string): OrmConfig | undefined;
|
|
12
|
+
getRealm(config: OrmConfig | undefined): Realm | undefined;
|
|
10
13
|
getOrCreateRealm(datasource: string | undefined): any;
|
|
11
14
|
generateLeoricAttributes(metadata: ModelMetadata): {};
|
|
12
15
|
register(): Promise<void>;
|
package/lib/LeoricRegister.js
CHANGED
|
@@ -15,7 +15,7 @@ class LeoricRegister extends sdk_base_1.default {
|
|
|
15
15
|
this.dataSourceManager = dataSourceManager;
|
|
16
16
|
this.realmMap = new Map();
|
|
17
17
|
}
|
|
18
|
-
|
|
18
|
+
getConfig(datasource) {
|
|
19
19
|
let config;
|
|
20
20
|
if (!datasource) {
|
|
21
21
|
config = this.dataSourceManager.getDefaultConfig();
|
|
@@ -23,12 +23,23 @@ class LeoricRegister extends sdk_base_1.default {
|
|
|
23
23
|
else {
|
|
24
24
|
config = this.dataSourceManager.getConfig(datasource);
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
return config;
|
|
27
|
+
}
|
|
28
|
+
getRealm(config) {
|
|
29
|
+
if (!(config === null || config === void 0 ? void 0 : config.database)) {
|
|
30
|
+
return undefined;
|
|
28
31
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
const realm = this.realmMap.get(config.database);
|
|
33
|
+
return realm;
|
|
34
|
+
}
|
|
35
|
+
getOrCreateRealm(datasource) {
|
|
36
|
+
const config = this.getConfig(datasource);
|
|
37
|
+
let realm;
|
|
38
|
+
if (config) {
|
|
39
|
+
realm = this.getRealm(config);
|
|
40
|
+
if (realm) {
|
|
41
|
+
return realm;
|
|
42
|
+
}
|
|
32
43
|
}
|
|
33
44
|
realm = new leoric_1.default({ ...config });
|
|
34
45
|
this.realmMap.set(config.database, realm);
|
|
@@ -74,4 +85,4 @@ class LeoricRegister extends sdk_base_1.default {
|
|
|
74
85
|
}
|
|
75
86
|
}
|
|
76
87
|
exports.LeoricRegister = LeoricRegister;
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGVvcmljUmVnaXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJMZW9yaWNSZWdpc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx3REFBNEI7QUFHNUIsb0RBQTJCO0FBQzNCLHdEQUFtRDtBQUNuRCxrRUFBNkU7QUFFN0UsTUFBYSxjQUFlLFNBQVEsa0JBQUk7SUFLdEMsWUFBWSxpQkFBb0MsRUFBRSxpQkFBb0M7UUFDcEYsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFDM0MsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzNDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsU0FBUyxDQUFDLFVBQW1CO1FBQzNCLElBQUksTUFBNkIsQ0FBQztRQUNsQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsTUFBTSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1NBQ3BEO2FBQU07WUFDTCxNQUFNLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN2RDtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBNkI7UUFDcEMsSUFBSSxDQUFDLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFFBQVEsQ0FBQSxFQUFFO1lBQ3JCLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2pELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQThCO1FBQzdDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMs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
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { LifecycleHook } from '@eggjs/tegg';
|
|
2
|
+
import { LoadUnit, LoadUnitLifecycleContext } from '@eggjs/tegg-metadata';
|
|
3
|
+
export declare class ORMLoadUnitHook implements LifecycleHook<LoadUnitLifecycleContext, LoadUnit> {
|
|
4
|
+
postCreate(_ctx: LoadUnitLifecycleContext, loadUnit: LoadUnit): Promise<void>;
|
|
5
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ORMLoadUnitHook = void 0;
|
|
4
|
+
const tegg_metadata_1 = require("@eggjs/tegg-metadata");
|
|
5
|
+
const SingletonORM_1 = require("./SingletonORM");
|
|
6
|
+
const REGISTER_CLAZZ = [
|
|
7
|
+
SingletonORM_1.Orm,
|
|
8
|
+
];
|
|
9
|
+
class ORMLoadUnitHook {
|
|
10
|
+
async postCreate(_ctx, loadUnit) {
|
|
11
|
+
if (loadUnit.type === tegg_metadata_1.EggLoadUnitType.APP) {
|
|
12
|
+
for (const clazz of REGISTER_CLAZZ) {
|
|
13
|
+
const proto = await tegg_metadata_1.EggPrototypeCreatorFactory.createProto(clazz, loadUnit);
|
|
14
|
+
tegg_metadata_1.EggPrototypeFactory.instance.registerPrototype(proto, loadUnit);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.ORMLoadUnitHook = ORMLoadUnitHook;
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT1JNTG9hZFVuaXRIb29rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiT1JNTG9hZFVuaXRIb29rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHdEQU04QjtBQUM5QixpREFBcUM7QUFFckMsTUFBTSxjQUFjLEdBQUc7SUFDckIsa0JBQUc7Q0FDSixDQUFDO0FBRUYsTUFBYSxlQUFlO0lBQzFCLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBOEIsRUFBRSxRQUFrQjtRQUNqRSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEtBQUssK0JBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDekMsS0FBSyxNQUFNLEtBQUssSUFBSSxjQUFjLEVBQUU7Z0JBQ2xDLE1BQU0sS0FBSyxHQUFHLE1BQU0sMENBQTBCLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDNUUsbUNBQW1CLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQzthQUNqRTtTQUNGO0lBQ0gsQ0FBQztDQUNGO0FBVEQsMENBU0MifQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (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
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.Orm = void 0;
|
|
13
|
+
const tegg_1 = require("@eggjs/tegg");
|
|
14
|
+
const LeoricRegister_1 = require("./LeoricRegister");
|
|
15
|
+
let Orm = class Orm {
|
|
16
|
+
// default dataSource
|
|
17
|
+
get client() {
|
|
18
|
+
const defaultConfig = this.leoricRegister.getConfig();
|
|
19
|
+
return this.leoricRegister.getRealm(defaultConfig);
|
|
20
|
+
}
|
|
21
|
+
getClient(datasource) {
|
|
22
|
+
const config = this.leoricRegister.getConfig(datasource);
|
|
23
|
+
if (!config) {
|
|
24
|
+
throw new Error(`not found ${datasource} datasource`);
|
|
25
|
+
}
|
|
26
|
+
return this.leoricRegister.getOrCreateRealm(config.database);
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, tegg_1.Inject)(),
|
|
31
|
+
__metadata("design:type", LeoricRegister_1.LeoricRegister)
|
|
32
|
+
], Orm.prototype, "leoricRegister", void 0);
|
|
33
|
+
Orm = __decorate([
|
|
34
|
+
(0, tegg_1.SingletonProto)({
|
|
35
|
+
accessLevel: tegg_1.AccessLevel.PUBLIC,
|
|
36
|
+
})
|
|
37
|
+
], Orm);
|
|
38
|
+
exports.Orm = Orm;
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2luZ2xldG9uT1JNLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiU2luZ2xldG9uT1JNLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHNDQUlxQjtBQUNyQixxREFBa0Q7QUFNM0MsSUFBTSxHQUFHLEdBQVQsTUFBTSxHQUFHO0lBSWQscUJBQXFCO0lBQ3JCLElBQUksTUFBTTtRQUNSLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdEQsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRUQsU0FBUyxDQUFDLFVBQWtCO1FBQzFCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLGFBQWEsVUFBVSxhQUFhLENBQUMsQ0FBQztTQUN2RDtRQUNELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFFLENBQUM7SUFDaEUsQ0FBQztDQUVGLENBQUE7QUFqQkM7SUFBQyxJQUFBLGFBQU0sR0FBRTs4QkFDZSwrQkFBYzsyQ0FBQztBQUY1QixHQUFHO0lBSGYsSUFBQSxxQkFBYyxFQUFDO1FBQ2QsV0FBVyxFQUFFLGtCQUFXLENBQUMsTUFBTTtLQUNoQyxDQUFDO0dBQ1csR0FBRyxDQWtCZjtBQWxCWSxrQkFBRyJ9
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"tegg"
|
|
7
7
|
]
|
|
8
8
|
},
|
|
9
|
-
"version": "3.
|
|
9
|
+
"version": "3.3.0",
|
|
10
10
|
"description": "orm decorator for egg",
|
|
11
11
|
"keywords": [
|
|
12
12
|
"egg",
|
|
@@ -49,12 +49,12 @@
|
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"@eggjs/egg-module-common": "^3.2.3",
|
|
52
|
-
"@eggjs/tegg": "^3.
|
|
52
|
+
"@eggjs/tegg": "^3.3.0",
|
|
53
53
|
"@eggjs/tegg-common-util": "^3.2.3",
|
|
54
54
|
"@eggjs/tegg-lifecycle": "^3.2.4",
|
|
55
55
|
"@eggjs/tegg-loader": "^3.2.4",
|
|
56
56
|
"@eggjs/tegg-metadata": "^3.2.4",
|
|
57
|
-
"@eggjs/tegg-orm-decorator": "^3.
|
|
57
|
+
"@eggjs/tegg-orm-decorator": "^3.3.0",
|
|
58
58
|
"@eggjs/tegg-runtime": "^3.2.4",
|
|
59
59
|
"@types/koa-router": "^7.0.40",
|
|
60
60
|
"koa-compose": "^3.2.1",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"@eggjs/module-test-util": "^3.2.4",
|
|
66
66
|
"@eggjs/router": "^2.0.0",
|
|
67
67
|
"@eggjs/tegg-config": "^3.2.3",
|
|
68
|
-
"@eggjs/tegg-plugin": "^3.
|
|
68
|
+
"@eggjs/tegg-plugin": "^3.3.0",
|
|
69
69
|
"@types/mocha": "^10.0.1",
|
|
70
70
|
"@types/node": "^18.11.18",
|
|
71
71
|
"cross-env": "^7.0.3",
|
|
@@ -81,5 +81,5 @@
|
|
|
81
81
|
"publishConfig": {
|
|
82
82
|
"access": "public"
|
|
83
83
|
},
|
|
84
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "07dccbd7c656c32811bff4f0e7d119a0e1d1a5c4"
|
|
85
85
|
}
|
package/typings/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import '@eggjs/tegg-plugin';
|
|
|
4
4
|
import { DataType } from 'leoric';
|
|
5
5
|
import { AttributeOptions } from '@eggjs/tegg-orm-decorator';
|
|
6
6
|
import { LeoricRegister } from '../lib/LeoricRegister';
|
|
7
|
+
import { Orm } from '../lib/SingletonORM';
|
|
7
8
|
|
|
8
9
|
declare module '@eggjs/tegg-orm-decorator' {
|
|
9
10
|
export declare function Attribute(dataType: DataType, options?: AttributeOptions): (target: any, propertyKey: PropertyKey) => void;
|
|
@@ -12,6 +13,7 @@ declare module '@eggjs/tegg-orm-decorator' {
|
|
|
12
13
|
declare module 'egg' {
|
|
13
14
|
export interface TeggOrmApplication {
|
|
14
15
|
leoricRegister: LeoricRegister;
|
|
16
|
+
orm: Orm;
|
|
15
17
|
}
|
|
16
18
|
|
|
17
19
|
interface Application extends TeggOrmApplication {
|