@eggjs/tegg-metadata 3.16.0 → 3.17.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/dist/src/factory/EggPrototypeCreatorFactory.d.ts +1 -1
- package/dist/src/factory/EggPrototypeCreatorFactory.js +39 -17
- package/dist/src/impl/EggPrototypeBuilder.js +9 -8
- package/dist/src/impl/EggPrototypeImpl.d.ts +2 -1
- package/dist/src/impl/EggPrototypeImpl.js +5 -1
- package/dist/src/impl/ModuleLoadUnit.d.ts +2 -1
- package/dist/src/impl/ModuleLoadUnit.js +30 -13
- package/dist/src/model/EggPrototype.d.ts +3 -1
- package/dist/src/model/EggPrototype.js +1 -1
- package/package.json +5 -5
|
@@ -6,5 +6,5 @@ export declare class EggPrototypeCreatorFactory {
|
|
|
6
6
|
private static creatorMap;
|
|
7
7
|
static registerPrototypeCreator(type: string, creator: EggPrototypeCreator): void;
|
|
8
8
|
static getPrototypeCreator(type: string): EggPrototypeCreator | undefined;
|
|
9
|
-
static createProto(clazz: EggProtoImplClass, loadUnit: LoadUnit): Promise<EggPrototype>;
|
|
9
|
+
static createProto(clazz: EggProtoImplClass, loadUnit: LoadUnit): Promise<EggPrototype[]>;
|
|
10
10
|
}
|
|
@@ -11,26 +11,48 @@ class EggPrototypeCreatorFactory {
|
|
|
11
11
|
return this.creatorMap.get(type);
|
|
12
12
|
}
|
|
13
13
|
static async createProto(clazz, loadUnit) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
let properties = [];
|
|
15
|
+
if (core_decorator_1.PrototypeUtil.isEggMultiInstancePrototype(clazz)) {
|
|
16
|
+
const multiInstanceProtoInfo = core_decorator_1.PrototypeUtil.getMultiInstanceProperty(clazz, {
|
|
17
|
+
unitPath: loadUnit.unitPath,
|
|
18
|
+
});
|
|
19
|
+
for (const obj of multiInstanceProtoInfo.objects) {
|
|
20
|
+
properties.push({
|
|
21
|
+
name: obj.name,
|
|
22
|
+
protoImplType: multiInstanceProtoInfo.protoImplType,
|
|
23
|
+
initType: multiInstanceProtoInfo.initType,
|
|
24
|
+
accessLevel: multiInstanceProtoInfo.accessLevel,
|
|
25
|
+
qualifiers: obj.qualifiers,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
18
28
|
}
|
|
19
|
-
|
|
20
|
-
clazz
|
|
21
|
-
loadUnit,
|
|
22
|
-
};
|
|
23
|
-
const proto = creator(ctx);
|
|
24
|
-
// TODO release egg prototype
|
|
25
|
-
await EggPrototype_1.EggPrototypeLifecycleUtil.objectPreCreate(ctx, proto);
|
|
26
|
-
if (proto.init) {
|
|
27
|
-
await proto.init(ctx);
|
|
29
|
+
else {
|
|
30
|
+
properties = [core_decorator_1.PrototypeUtil.getProperty(clazz)];
|
|
28
31
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
const protos = [];
|
|
33
|
+
for (const property of properties) {
|
|
34
|
+
const creator = this.getPrototypeCreator(property.protoImplType);
|
|
35
|
+
if (!creator) {
|
|
36
|
+
throw new Error(`not found proto creator for type: ${property.protoImplType}`);
|
|
37
|
+
}
|
|
38
|
+
const ctx = {
|
|
39
|
+
clazz,
|
|
40
|
+
loadUnit,
|
|
41
|
+
prototypeInfo: property,
|
|
42
|
+
};
|
|
43
|
+
const proto = creator(ctx);
|
|
44
|
+
// TODO release egg prototype
|
|
45
|
+
await EggPrototype_1.EggPrototypeLifecycleUtil.objectPreCreate(ctx, proto);
|
|
46
|
+
if (proto.init) {
|
|
47
|
+
await proto.init(ctx);
|
|
48
|
+
}
|
|
49
|
+
await EggPrototype_1.EggPrototypeLifecycleUtil.objectPostCreate(ctx, proto);
|
|
50
|
+
core_decorator_1.PrototypeUtil.setClazzProto(clazz, proto);
|
|
51
|
+
protos.push(proto);
|
|
52
|
+
}
|
|
53
|
+
return protos;
|
|
32
54
|
}
|
|
33
55
|
}
|
|
34
56
|
exports.EggPrototypeCreatorFactory = EggPrototypeCreatorFactory;
|
|
35
57
|
EggPrototypeCreatorFactory.creatorMap = new Map();
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlQ3JlYXRvckZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmFjdG9yeS9FZ2dQcm90b3R5cGVDcmVhdG9yRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwREFBMkY7QUFFM0Ysd0RBQThHO0FBSTlHLE1BQWEsMEJBQTBCO0lBR3JDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxJQUFZLEVBQUUsT0FBNEI7UUFDeEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUF3QixFQUFFLFFBQWtCO1FBQ25FLElBQUksVUFBVSxHQUF1QixFQUFFLENBQUM7UUFDeEMsSUFBSSw4QkFBYSxDQUFDLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BELE1BQU0sc0JBQXNCLEdBQUcsOEJBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUU7Z0JBQzNFLFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUTthQUM1QixDQUFFLENBQUM7WUFDSixLQUFLLE1BQU0sR0FBRyxJQUFJLHNCQUFzQixDQUFDLE9BQU8sRUFBRTtnQkFDaEQsVUFBVSxDQUFDLElBQUksQ0FBQztvQkFDZCxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7b0JBQ2QsYUFBYSxFQUFFLHNCQUFzQixDQUFDLGFBQWE7b0JBQ25ELFFBQVEsRUFBRSxzQkFBc0IsQ0FBQyxRQUFRO29CQUN6QyxXQUFXLEVBQUUsc0JBQXNCLENBQUMsV0FBVztvQkFDL0MsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO2lCQUMzQixDQUFDLENBQUM7YUFDSjtTQUNGO2FBQU07WUFDTCxVQUFVLEdBQUcsQ0FBRSw4QkFBYSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUUsQ0FBRSxDQUFDO1NBQ3BEO1FBQ0QsTUFBTSxNQUFNLEdBQW1CLEVBQUUsQ0FBQztRQUNsQyxLQUFLLE1BQU0sUUFBUSxJQUFJLFVBQVUsRUFBRTtZQUNqQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7YUFDaEY7WUFDRCxNQUFNLEdBQUcsR0FBaUM7Z0JBQ3hDLEtBQUs7Z0JBQ0wsUUFBUTtnQkFDUixhQUFhLEVBQUUsUUFBUTthQUN4QixDQUFDO1lBQ0YsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzNCLDZCQUE2QjtZQUM3QixNQUFNLHdDQUF5QixDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDNUQsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFO2dCQUNkLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN2QjtZQUNELE1BQU0sd0NBQXlCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzdELDhCQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMxQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFFaEIsQ0FBQzs7QUFwREgsZ0VBcURDO0FBcERnQixxQ0FBVSxHQUFHLElBQUksR0FBRyxFQUErQixDQUFDIn0=
|
|
@@ -17,21 +17,22 @@ class EggPrototypeBuilder {
|
|
|
17
17
|
this.qualifiers = [];
|
|
18
18
|
}
|
|
19
19
|
static create(ctx) {
|
|
20
|
+
var _a;
|
|
20
21
|
const { clazz, loadUnit } = ctx;
|
|
21
22
|
const filepath = core_decorator_1.PrototypeUtil.getFilePath(clazz);
|
|
22
23
|
(0, assert_1.default)(filepath, 'not find filepath');
|
|
23
|
-
let property = core_decorator_1.PrototypeUtil.getProperty(clazz);
|
|
24
|
-
(0, assert_1.default)(property, 'not find property');
|
|
25
|
-
property = property;
|
|
26
24
|
const builder = new EggPrototypeBuilder();
|
|
27
25
|
builder.clazz = clazz;
|
|
28
|
-
builder.name =
|
|
29
|
-
builder.initType =
|
|
30
|
-
builder.accessLevel =
|
|
26
|
+
builder.name = ctx.prototypeInfo.name;
|
|
27
|
+
builder.initType = ctx.prototypeInfo.initType;
|
|
28
|
+
builder.accessLevel = ctx.prototypeInfo.accessLevel;
|
|
31
29
|
builder.filepath = filepath;
|
|
32
30
|
builder.injectObjects = core_decorator_1.PrototypeUtil.getInjectObjects(clazz) || [];
|
|
33
31
|
builder.loadUnit = loadUnit;
|
|
34
|
-
builder.qualifiers =
|
|
32
|
+
builder.qualifiers = [
|
|
33
|
+
...core_decorator_1.QualifierUtil.getProtoQualifiers(clazz),
|
|
34
|
+
...((_a = ctx.prototypeInfo.qualifiers) !== null && _a !== void 0 ? _a : []),
|
|
35
|
+
];
|
|
35
36
|
return builder.build();
|
|
36
37
|
}
|
|
37
38
|
tryFindDefaultPrototype(injectObject) {
|
|
@@ -98,4 +99,4 @@ class EggPrototypeBuilder {
|
|
|
98
99
|
}
|
|
99
100
|
exports.EggPrototypeBuilder = EggPrototypeBuilder;
|
|
100
101
|
EggPrototypeCreatorFactory_1.EggPrototypeCreatorFactory.registerPrototypeCreator(core_decorator_1.DEFAULT_PROTO_IMPL_TYPE, EggPrototypeBuilder.create);
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL0VnZ1Byb3RvdHlwZUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLDBEQU8rQjtBQUcvQix3RUFBcUU7QUFDckUsMERBQXNEO0FBQ3RELCtEQUE0RDtBQUM1RCxzRkFBbUY7QUFDbkYsc0NBQXNFO0FBa0J0RSxNQUFhLG1CQUFtQjtJQUFoQztRQU1VLGtCQUFhLEdBQXdCLEVBQUUsQ0FBQztRQUV4QyxlQUFVLEdBQW9CLEVBQUUsQ0FBQztJQThGM0MsQ0FBQztJQTVGQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQWlDOztRQUM3QyxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLEdBQUcsQ0FBQztRQUNoQyxNQUFNLFFBQVEsR0FBRyw4QkFBYSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsRCxJQUFBLGdCQUFNLEVBQUMsUUFBUSxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFDdEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1FBQzFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7UUFDdEMsT0FBTyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUM5QyxPQUFPLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO1FBQ3BELE9BQU8sQ0FBQyxRQUFRLEdBQUcsUUFBUyxDQUFDO1FBQzdCLE9BQU8sQ0FBQyxhQUFhLEdBQUcsOEJBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEUsT0FBTyxDQUFDLFFBQVEsR0FBRyxR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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EggPrototype, InjectObjectProto } from '../model/EggPrototype';
|
|
2
|
-
import { AccessLevel, EggProtoImplClass, EggPrototypeName, MetaDataKey, ObjectInitTypeLike, QualifierInfo } from '@eggjs/core-decorator';
|
|
2
|
+
import { AccessLevel, EggProtoImplClass, EggPrototypeName, MetaDataKey, ObjectInitTypeLike, QualifierInfo, QualifierValue } from '@eggjs/core-decorator';
|
|
3
3
|
import { Id } from '@eggjs/tegg-lifecycle';
|
|
4
4
|
export declare class EggPrototypeImpl implements EggPrototype {
|
|
5
5
|
private readonly clazz;
|
|
@@ -14,6 +14,7 @@ export declare class EggPrototypeImpl implements EggPrototype {
|
|
|
14
14
|
constructor(id: string, name: EggPrototypeName, clazz: EggProtoImplClass, filepath: string, initType: ObjectInitTypeLike, accessLevel: AccessLevel, injectObjectMap: InjectObjectProto[], loadUnitId: Id, qualifiers: QualifierInfo[]);
|
|
15
15
|
verifyQualifiers(qualifiers: QualifierInfo[]): boolean;
|
|
16
16
|
verifyQualifier(qualifier: QualifierInfo): boolean;
|
|
17
|
+
getQualifier(attribute: string): QualifierValue | undefined;
|
|
17
18
|
constructEggObject(): object;
|
|
18
19
|
getMetaData<T>(metadataKey: MetaDataKey): T | undefined;
|
|
19
20
|
}
|
|
@@ -26,6 +26,10 @@ class EggPrototypeImpl {
|
|
|
26
26
|
const selfQualifiers = this.qualifiers.find(t => t.attribute === qualifier.attribute);
|
|
27
27
|
return (selfQualifiers === null || selfQualifiers === void 0 ? void 0 : selfQualifiers.value) === qualifier.value;
|
|
28
28
|
}
|
|
29
|
+
getQualifier(attribute) {
|
|
30
|
+
var _a;
|
|
31
|
+
return (_a = this.qualifiers.find(t => t.attribute === attribute)) === null || _a === void 0 ? void 0 : _a.value;
|
|
32
|
+
}
|
|
29
33
|
constructEggObject() {
|
|
30
34
|
return Reflect.construct(this.clazz, []);
|
|
31
35
|
}
|
|
@@ -34,4 +38,4 @@ class EggPrototypeImpl {
|
|
|
34
38
|
}
|
|
35
39
|
}
|
|
36
40
|
exports.EggPrototypeImpl = EggPrototypeImpl;
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlSW1wbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL0VnZ1Byb3RvdHlwZUltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsMERBTStCO0FBSS9CLE1BQWEsZ0JBQWdCO0lBWTNCLFlBQ0UsRUFBVSxFQUNWLElBQXNCLEVBQ3RCLEtBQXdCLEVBQ3hCLFFBQWdCLEVBQ2hCLFFBQTRCLEVBQzVCLFdBQXdCLEVBQ3hCLGVBQW9DLEVBQ3BDLFVBQWMsRUFDZCxVQUEyQjtRQUUzQixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxhQUFhLEdBQUcsZUFBZSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUEyQjtRQUMxQyxLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDcEMsT0FBTyxLQUFLLENBQUM7YUFDZDtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQXdCO1FBQ3RDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEYsT0FBTyxDQUFBLGNBQWMsYUFBZCxjQUFjLHVCQUFkLGNBQWMsQ0FBRSxLQUFLLE1BQUssU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNuRCxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCOztRQUM1QixPQUFPLE1BQUEsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQywwQ0FBRSxLQUFLLENBQUM7SUFDckUsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsV0FBVyxDQUFJLFdBQXdCO1FBQ3JDLE9BQU8sNkJBQVksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzRCxDQUFDO0NBQ0Y7QUEzREQsNENBMkRDIn0=
|
|
@@ -6,7 +6,8 @@ import { EggLoadUnitType } from '../enum/EggLoadUnitType';
|
|
|
6
6
|
export declare class ModuleGraph {
|
|
7
7
|
private graph;
|
|
8
8
|
clazzList: EggProtoImplClass[];
|
|
9
|
-
|
|
9
|
+
readonly unitPath: string;
|
|
10
|
+
constructor(clazzList: EggProtoImplClass[], unitPath: string);
|
|
10
11
|
private findInjectNode;
|
|
11
12
|
private build;
|
|
12
13
|
sort(): void;
|
|
@@ -17,13 +17,14 @@ const EggPrototypeCreatorFactory_1 = require("../factory/EggPrototypeCreatorFact
|
|
|
17
17
|
const errors_1 = require("../errors");
|
|
18
18
|
let id = 0;
|
|
19
19
|
class ProtoNode {
|
|
20
|
-
constructor(clazz) {
|
|
21
|
-
|
|
22
|
-
this.name = property.name;
|
|
20
|
+
constructor(clazz, objName, unitPath) {
|
|
21
|
+
this.name = objName;
|
|
23
22
|
this.id = '' + (id++);
|
|
24
23
|
this.clazz = clazz;
|
|
25
24
|
this.qualifiers = core_decorator_1.QualifierUtil.getProtoQualifiers(clazz);
|
|
26
|
-
this.initType =
|
|
25
|
+
this.initType = core_decorator_1.PrototypeUtil.getInitType(clazz, {
|
|
26
|
+
unitPath,
|
|
27
|
+
});
|
|
27
28
|
}
|
|
28
29
|
verifyQualifiers(qualifiers) {
|
|
29
30
|
for (const qualifier of qualifiers) {
|
|
@@ -42,9 +43,10 @@ class ProtoNode {
|
|
|
42
43
|
}
|
|
43
44
|
}
|
|
44
45
|
class ModuleGraph {
|
|
45
|
-
constructor(clazzList) {
|
|
46
|
+
constructor(clazzList, unitPath) {
|
|
46
47
|
this.clazzList = clazzList;
|
|
47
48
|
this.graph = new tegg_common_util_1.Graph();
|
|
49
|
+
this.unitPath = unitPath;
|
|
48
50
|
this.build();
|
|
49
51
|
}
|
|
50
52
|
findInjectNode(objName, qualifiers, parentInitTye) {
|
|
@@ -69,7 +71,15 @@ class ModuleGraph {
|
|
|
69
71
|
throw egg_errors_1.FrameworkErrorFormater.formatError(new errors_1.MultiPrototypeFound(String(objName), qualifiers, JSON.stringify(result)));
|
|
70
72
|
}
|
|
71
73
|
build() {
|
|
72
|
-
const protoGraphNodes =
|
|
74
|
+
const protoGraphNodes = [];
|
|
75
|
+
for (const clazz of this.clazzList) {
|
|
76
|
+
const objNames = core_decorator_1.PrototypeUtil.getObjNames(clazz, {
|
|
77
|
+
unitPath: this.unitPath,
|
|
78
|
+
});
|
|
79
|
+
for (const objName of objNames) {
|
|
80
|
+
protoGraphNodes.push(new tegg_common_util_1.GraphNode(new ProtoNode(clazz, objName, this.unitPath)));
|
|
81
|
+
}
|
|
82
|
+
}
|
|
73
83
|
for (const node of protoGraphNodes) {
|
|
74
84
|
if (!this.graph.addVertex(node)) {
|
|
75
85
|
throw new Error(`duplicate proto: ${node.val.id}`);
|
|
@@ -92,7 +102,11 @@ class ModuleGraph {
|
|
|
92
102
|
if (loopPath) {
|
|
93
103
|
throw new Error('proto has recursive deps: ' + loopPath);
|
|
94
104
|
}
|
|
95
|
-
|
|
105
|
+
const clazzSet = new Set();
|
|
106
|
+
for (const clazz of this.graph.sort()) {
|
|
107
|
+
clazzSet.add(clazz.val.clazz);
|
|
108
|
+
}
|
|
109
|
+
this.clazzList = Array.from(clazzSet);
|
|
96
110
|
}
|
|
97
111
|
}
|
|
98
112
|
exports.ModuleGraph = ModuleGraph;
|
|
@@ -108,10 +122,11 @@ class ModuleLoadUnit {
|
|
|
108
122
|
loadClazz() {
|
|
109
123
|
const clazzList = this.loader.load();
|
|
110
124
|
for (const clazz of clazzList) {
|
|
111
|
-
const property = core_decorator_1.PrototypeUtil.getProperty(clazz);
|
|
112
125
|
const defaultQualifier = [{
|
|
113
126
|
attribute: core_decorator_1.InitTypeQualifierAttribute,
|
|
114
|
-
value:
|
|
127
|
+
value: core_decorator_1.PrototypeUtil.getInitType(clazz, {
|
|
128
|
+
unitPath: this.unitPath,
|
|
129
|
+
}),
|
|
115
130
|
}, {
|
|
116
131
|
attribute: core_decorator_1.LoadUnitNameQualifierAttribute,
|
|
117
132
|
value: this.name,
|
|
@@ -124,12 +139,14 @@ class ModuleLoadUnit {
|
|
|
124
139
|
}
|
|
125
140
|
async init() {
|
|
126
141
|
const clazzList = this.loadClazz();
|
|
127
|
-
const protoGraph = new ModuleGraph(clazzList);
|
|
142
|
+
const protoGraph = new ModuleGraph(clazzList, this.unitPath);
|
|
128
143
|
protoGraph.sort();
|
|
129
144
|
this.clazzList = protoGraph.clazzList;
|
|
130
145
|
for (const clazz of this.clazzList) {
|
|
131
|
-
const
|
|
132
|
-
|
|
146
|
+
const protos = await EggPrototypeCreatorFactory_1.EggPrototypeCreatorFactory.createProto(clazz, this);
|
|
147
|
+
for (const proto of protos) {
|
|
148
|
+
EggPrototypeFactory_1.EggPrototypeFactory.instance.registerPrototype(proto, this);
|
|
149
|
+
}
|
|
133
150
|
}
|
|
134
151
|
}
|
|
135
152
|
containPrototype(proto) {
|
|
@@ -180,4 +197,4 @@ class ModuleLoadUnit {
|
|
|
180
197
|
}
|
|
181
198
|
exports.ModuleLoadUnit = ModuleLoadUnit;
|
|
182
199
|
LoadUnitFactory_1.LoadUnitFactory.registerLoadUnitCreator(EggLoadUnitType_1.EggLoadUnitType.MODULE, ModuleLoadUnit.createModule);
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlTG9hZFVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW1wbC9Nb2R1bGVMb2FkVW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsZ0RBQXdCO0FBRXhCLDhEQUFrRjtBQUNsRiwwREFTK0I7QUFDL0IsMkNBQW9EO0FBQ3BELDBEQUFzRDtBQUl0RCw2REFBMEQ7QUFDMUQsd0VBQXFFO0FBQ3JFLGdFQUE2RDtBQUM3RCxzRkFBbUY7QUFDbkYsc0NBQWdEO0FBRWhELElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztBQUVYLE1BQU0sU0FBUztJQU9iLFlBQVksS0FBd0IsRUFBRSxPQUF5QixFQUFFLFFBQWdCO1FBQy9FLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLDhCQUFhLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFFBQVEsR0FBRyw4QkFBYSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUU7WUFDL0MsUUFBUTtTQUNULENBQUUsQ0FBQztJQUNOLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUEyQjtRQUMxQyxLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDcEMsT0FBTyxLQUFLLENBQUM7YUFDZDtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQXdCO1FBQ3RDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMs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
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { QualifierInfo, EggPrototypeName, AccessLevel, ObjectInitTypeLike, MetaDataKey, EggProtoImplClass } from '@eggjs/core-decorator';
|
|
1
|
+
import { QualifierInfo, EggPrototypeName, AccessLevel, ObjectInitTypeLike, MetaDataKey, EggProtoImplClass, EggPrototypeInfo, QualifierValue, QualifierAttribute } from '@eggjs/core-decorator';
|
|
2
2
|
import { LifecycleObject, LifecycleContext, LifecycleUtil } from '@eggjs/tegg-lifecycle';
|
|
3
3
|
import { LoadUnit } from './LoadUnit';
|
|
4
4
|
export interface InjectObjectProto {
|
|
@@ -22,6 +22,7 @@ export interface InjectObjectProto {
|
|
|
22
22
|
export type EggPrototypeClass = new (...args: any[]) => EggPrototype;
|
|
23
23
|
export interface EggPrototypeLifecycleContext extends LifecycleContext {
|
|
24
24
|
clazz: EggProtoImplClass;
|
|
25
|
+
prototypeInfo: EggPrototypeInfo;
|
|
25
26
|
loadUnit: LoadUnit;
|
|
26
27
|
}
|
|
27
28
|
export interface EggPrototype extends LifecycleObject<EggPrototypeLifecycleContext> {
|
|
@@ -46,6 +47,7 @@ export interface EggPrototype extends LifecycleObject<EggPrototypeLifecycleConte
|
|
|
46
47
|
*/
|
|
47
48
|
verifyQualifier(qualifier: QualifierInfo): boolean;
|
|
48
49
|
verifyQualifiers(qualifiers: QualifierInfo[]): boolean;
|
|
50
|
+
getQualifier(attribute: QualifierAttribute): QualifierValue | undefined;
|
|
49
51
|
/**
|
|
50
52
|
* construct egg object, not trigger lifecycle method/hook
|
|
51
53
|
*/
|
|
@@ -3,4 +3,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.EggPrototypeLifecycleUtil = void 0;
|
|
4
4
|
const tegg_lifecycle_1 = require("@eggjs/tegg-lifecycle");
|
|
5
5
|
exports.EggPrototypeLifecycleUtil = new tegg_lifecycle_1.LifecycleUtil();
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVsL0VnZ1Byb3RvdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFRQSwwREFBeUY7QUFpRTVFLFFBQUEseUJBQXlCLEdBQUcsSUFBSSw4QkFBYSxFQUE4QyxDQUFDIn0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/tegg-metadata",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.17.0",
|
|
4
4
|
"description": "tegg metadata",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"egg",
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
"node": ">=14.0.0"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@eggjs/core-decorator": "^3.
|
|
39
|
-
"@eggjs/tegg-common-util": "^3.
|
|
40
|
-
"@eggjs/tegg-lifecycle": "^3.
|
|
38
|
+
"@eggjs/core-decorator": "^3.17.0",
|
|
39
|
+
"@eggjs/tegg-common-util": "^3.17.0",
|
|
40
|
+
"@eggjs/tegg-lifecycle": "^3.17.0",
|
|
41
41
|
"egg-errors": "^2.2.3"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
@@ -53,5 +53,5 @@
|
|
|
53
53
|
"publishConfig": {
|
|
54
54
|
"access": "public"
|
|
55
55
|
},
|
|
56
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "f049412d99d784468f48e030dcc501c428112d63"
|
|
57
57
|
}
|