@eggjs/tegg-metadata 3.46.1 → 3.46.2

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/index.d.ts CHANGED
@@ -8,5 +8,13 @@ export * from './src/errors';
8
8
  export * from './src/util/ClassUtil';
9
9
  export * from './src/impl/LoadUnitMultiInstanceProtoHook';
10
10
  export * from './src/model/AppGraph';
11
+ export * from './src/model/graph/GlobalGraph';
12
+ export * from './src/model/graph/GlobalModuleNode';
13
+ export * from './src/model/graph/GlobalModuleNodeBuilder';
14
+ export * from './src/model/graph/ProtoNode';
15
+ export * from './src/model/graph/ProtoSelector';
16
+ export * from './src/model/ProtoDescriptor/AbstractProtoDescriptor';
17
+ export * from './src/model/ProtoDescriptor/ClassProtoDescriptor';
18
+ export * from './src/model/ModuleDescriptor';
11
19
  import './src/impl/ModuleLoadUnit';
12
20
  import './src/impl/EggPrototypeBuilder';
package/dist/index.js CHANGED
@@ -24,6 +24,14 @@ __exportStar(require("./src/errors"), exports);
24
24
  __exportStar(require("./src/util/ClassUtil"), exports);
25
25
  __exportStar(require("./src/impl/LoadUnitMultiInstanceProtoHook"), exports);
26
26
  __exportStar(require("./src/model/AppGraph"), exports);
27
+ __exportStar(require("./src/model/graph/GlobalGraph"), exports);
28
+ __exportStar(require("./src/model/graph/GlobalModuleNode"), exports);
29
+ __exportStar(require("./src/model/graph/GlobalModuleNodeBuilder"), exports);
30
+ __exportStar(require("./src/model/graph/ProtoNode"), exports);
31
+ __exportStar(require("./src/model/graph/ProtoSelector"), exports);
32
+ __exportStar(require("./src/model/ProtoDescriptor/AbstractProtoDescriptor"), exports);
33
+ __exportStar(require("./src/model/ProtoDescriptor/ClassProtoDescriptor"), exports);
34
+ __exportStar(require("./src/model/ModuleDescriptor"), exports);
27
35
  require("./src/impl/ModuleLoadUnit");
28
36
  require("./src/impl/EggPrototypeBuilder");
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTJDO0FBQzNDLG9FQUFrRDtBQUNsRCwyRUFBeUQ7QUFDekQsZ0VBQThDO0FBQzlDLDJEQUF5QztBQUN6Qyx1REFBcUM7QUFDckMsK0NBQTZCO0FBQzdCLHVEQUFxQztBQUNyQyw0RUFBMEQ7QUFDMUQsdURBQXFDO0FBRXJDLHFDQUFtQztBQUNuQywwQ0FBd0MifQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTJDO0FBQzNDLG9FQUFrRDtBQUNsRCwyRUFBeUQ7QUFDekQsZ0VBQThDO0FBQzlDLDJEQUF5QztBQUN6Qyx1REFBcUM7QUFDckMsK0NBQTZCO0FBQzdCLHVEQUFxQztBQUNyQyw0RUFBMEQ7QUFDMUQsdURBQXFDO0FBRXJDLGdFQUE4QztBQUM5QyxxRUFBbUQ7QUFDbkQsNEVBQTBEO0FBQzFELDhEQUE0QztBQUM1QyxrRUFBZ0Q7QUFDaEQsc0ZBQW9FO0FBQ3BFLG1GQUFpRTtBQUNqRSwrREFBNkM7QUFFN0MscUNBQW1DO0FBQ25DLDBDQUF3QyJ9
@@ -1,7 +1,9 @@
1
1
  import type { EggProtoImplClass, EggPrototypeCreator, LoadUnit, EggPrototype } from '@eggjs/tegg-types';
2
+ import { ClassProtoDescriptor } from '../model/ProtoDescriptor/ClassProtoDescriptor';
2
3
  export declare class EggPrototypeCreatorFactory {
3
4
  private static creatorMap;
4
5
  static registerPrototypeCreator(type: string, creator: EggPrototypeCreator): void;
5
6
  static getPrototypeCreator(type: string): EggPrototypeCreator | undefined;
6
7
  static createProto(clazz: EggProtoImplClass, loadUnit: LoadUnit): Promise<EggPrototype[]>;
8
+ static createProtoByDescriptor(protoDescriptor: ClassProtoDescriptor, loadUnit: LoadUnit): Promise<EggPrototype>;
7
9
  }
@@ -70,7 +70,26 @@ class EggPrototypeCreatorFactory {
70
70
  }
71
71
  return protos;
72
72
  }
73
+ static async createProtoByDescriptor(protoDescriptor, loadUnit) {
74
+ const creator = this.getPrototypeCreator(protoDescriptor.protoImplType);
75
+ if (!creator) {
76
+ throw new Error(`not found proto creator for type: ${protoDescriptor.protoImplType}`);
77
+ }
78
+ const ctx = {
79
+ clazz: protoDescriptor.clazz,
80
+ loadUnit,
81
+ prototypeInfo: protoDescriptor,
82
+ };
83
+ const proto = creator(ctx);
84
+ await EggPrototype_1.EggPrototypeLifecycleUtil.objectPreCreate(ctx, proto);
85
+ if (proto.init) {
86
+ await proto.init(ctx);
87
+ }
88
+ await EggPrototype_1.EggPrototypeLifecycleUtil.objectPostCreate(ctx, proto);
89
+ core_decorator_1.PrototypeUtil.setClazzProto(protoDescriptor.clazz, proto);
90
+ return proto;
91
+ }
73
92
  }
74
93
  exports.EggPrototypeCreatorFactory = EggPrototypeCreatorFactory;
75
94
  EggPrototypeCreatorFactory.creatorMap = new Map();
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlQ3JlYXRvckZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmFjdG9yeS9FZ2dQcm90b3R5cGVDcmVhdG9yRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwREFBa0g7QUFTbEgsd0RBQWtFO0FBRWxFLE1BQWEsMEJBQTBCO0lBR3JDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxJQUFZLEVBQUUsT0FBNEI7UUFDeEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUF3QixFQUFFLFFBQWtCO1FBQ25FLElBQUksVUFBVSxHQUF1QixFQUFFLENBQUM7UUFDeEMsSUFBSSw4QkFBYSxDQUFDLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDckQsTUFBTSxzQkFBc0IsR0FBRyw4QkFBYSxDQUFDLHdCQUF3QixDQUFDLEtBQUssRUFBRTtnQkFDM0UsUUFBUSxFQUFFLFFBQVEsQ0FBQyxRQUFRO2dCQUMzQixVQUFVLEVBQUUsUUFBUSxDQUFDLElBQUk7YUFDMUIsQ0FBRSxDQUFDO1lBQ0osS0FBSyxNQUFNLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDakQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDO3dCQUN4QixTQUFTLEVBQUUsMkNBQTBCO3dCQUNyQyxLQUFLLEVBQUUsOEJBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFOzRCQUN0QyxRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7NEJBQzNCLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSTt5QkFDMUIsQ0FBRTtxQkFDSixFQUFFO3dCQUNELFNBQVMsRUFBRSwrQ0FBOEI7d0JBQ3pDLEtBQUssRUFBRSxRQUFRLENBQUMsSUFBSTtxQkFDckIsQ0FBQyxDQUFDO2dCQUNILGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtvQkFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQzt3QkFDbkUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ2pDLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBRUgsVUFBVSxDQUFDLElBQUksQ0FBQztvQkFDZCxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7b0JBQ2QsYUFBYSxFQUFFLHNCQUFzQixDQUFDLGFBQWE7b0JBQ25ELFFBQVEsRUFBRSxzQkFBc0IsQ0FBQyxRQUFRO29CQUN6QyxXQUFXLEVBQUUsc0JBQXNCLENBQUMsV0FBVztvQkFDL0MsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO29CQUMxQixnQkFBZ0IsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO29CQUN0QyxTQUFTLEVBQUUsc0JBQXNCLENBQUMsU0FBUztpQkFDNUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7YUFBTSxDQUFDO1lBQ04sVUFBVSxHQUFHLENBQUUsOEJBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFFLENBQUUsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQW1CLEVBQUUsQ0FBQztRQUNsQyxLQUFLLE1BQU0sUUFBUSxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1lBQ2pGLENBQUM7WUFDRCxNQUFNLEdBQUcsR0FBaUM7Z0JBQ3hDLEtBQUs7Z0JBQ0wsUUFBUTtnQkFDUixhQUFhLEVBQUUsUUFBUTthQUN4QixDQUFDO1lBQ0YsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzNCLDZCQUE2QjtZQUM3QixNQUFNLHdDQUF5QixDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDNUQsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2YsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hCLENBQUM7WUFDRCxNQUFNLHdDQUF5QixDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM3RCw4QkFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDMUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFFaEIsQ0FBQzs7QUF2RUgsZ0VBd0VDO0FBdkVnQixxQ0FBVSxHQUFHLElBQUksR0FBRyxFQUErQixDQUFDIn0=
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlQ3JlYXRvckZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmFjdG9yeS9FZ2dQcm90b3R5cGVDcmVhdG9yRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwREFBa0g7QUFTbEgsd0RBQWtFO0FBR2xFLE1BQWEsMEJBQTBCO0lBR3JDLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxJQUFZLEVBQUUsT0FBNEI7UUFDeEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBWTtRQUNyQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxLQUF3QixFQUFFLFFBQWtCO1FBQ25FLElBQUksVUFBVSxHQUF1QixFQUFFLENBQUM7UUFDeEMsSUFBSSw4QkFBYSxDQUFDLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDckQsTUFBTSxzQkFBc0IsR0FBRyw4QkFBYSxDQUFDLHdCQUF3QixDQUFDLEtBQUssRUFBRTtnQkFDM0UsUUFBUSxFQUFFLFFBQVEsQ0FBQyxRQUFRO2dCQUMzQixVQUFVLEVBQUUsUUFBUSxDQUFDLElBQUk7YUFDMUIsQ0FBRSxDQUFDO1lBQ0osS0FBSyxNQUFNLEdBQUcsSUFBSSxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDakQsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDO3dCQUN4QixTQUFTLEVBQUUsMkNBQTBCO3dCQUNyQyxLQUFLLEVBQUUsOEJBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFOzRCQUN0QyxRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7NEJBQzNCLFVBQVUsRUFBRSxRQUFRLENB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
@@ -37,7 +37,6 @@ class EggPrototypeBuilder {
37
37
  ...core_decorator_1.QualifierUtil.getProtoQualifiers(clazz),
38
38
  ...((_a = ctx.prototypeInfo.qualifiers) !== null && _a !== void 0 ? _a : []),
39
39
  ];
40
- console.log('proto: ', ctx.prototypeInfo.properQualifiers);
41
40
  builder.properQualifiers = (_b = ctx.prototypeInfo.properQualifiers) !== null && _b !== void 0 ? _b : {};
42
41
  builder.multiInstanceConstructorIndex = core_decorator_1.PrototypeUtil.getMultiInstanceConstructorIndex(clazz);
43
42
  builder.multiInstanceConstructorAttributes = core_decorator_1.PrototypeUtil.getMultiInstanceConstructorAttributes(clazz);
@@ -47,7 +46,6 @@ class EggPrototypeBuilder {
47
46
  var _a;
48
47
  const propertyQualifiers = core_decorator_1.QualifierUtil.getProperQualifiers(this.clazz, injectObject.refName);
49
48
  const multiInstancePropertyQualifiers = (_a = this.properQualifiers[injectObject.refName]) !== null && _a !== void 0 ? _a : [];
50
- console.log('multi instance: ', this.properQualifiers, injectObject.refName);
51
49
  return EggPrototypeFactory_1.EggPrototypeFactory.instance.getPrototype(injectObject.objName, this.loadUnit, [
52
50
  ...propertyQualifiers,
53
51
  ...multiInstancePropertyQualifiers,
@@ -128,4 +126,4 @@ class EggPrototypeBuilder {
128
126
  }
129
127
  exports.EggPrototypeBuilder = EggPrototypeBuilder;
130
128
  EggPrototypeCreatorFactory_1.EggPrototypeCreatorFactory.registerPrototypeCreator(tegg_types_1.DEFAULT_PROTO_IMPL_TYPE, EggPrototypeBuilder.create);
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL0VnZ1Byb3RvdHlwZUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOERBQWlDO0FBQ2pDLDBEQUFxRztBQWFyRyxrREFLMkI7QUFDM0Isd0VBQXFFO0FBQ3JFLDBEQUFzRDtBQUN0RCx5REFBc0Q7QUFDdEQsc0ZBQW1GO0FBQ25GLHNDQUFzRTtBQUV0RSxNQUFhLG1CQUFtQjtJQUFoQztRQU9VLGtCQUFhLEdBQTRDLEVBQUUsQ0FBQztRQUU1RCxlQUFVLEdBQW9CLEVBQUUsQ0FBQztRQUNqQyxxQkFBZ0IsR0FBb0MsRUFBRSxDQUFDO0lBNEhqRSxDQUFDO0lBdkhDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBaUM7O1FBQzdDLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsR0FBRyxDQUFDO1FBQ2hDLE1BQU0sUUFBUSxHQUFHLDhCQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELElBQUEscUJBQU0sRUFBQyxRQUFRLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUN0QyxNQUFNLE9BQU8sR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFDMUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDdEIsT0FBTyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQ2hELE9BQU8sQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7UUFDOUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUNwRCxPQUFPLENBQUMsUUFBUSxHQUFHLFFBQVMsQ0FBQztRQUM3QixPQUFPLENBQUMsVUFBVSxHQUFHLDhCQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hELE9BQU8sQ0FBQyxhQUFhLEdBQUcsOEJBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEUsT0FBTyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDNUIsT0FBTyxDQUFDLFVBQVUsR0FBRztZQUNuQixHQUFHLDhCQUFhLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDO1lBQzFDLEdBQUcsQ0FBQyxNQUFBLEdBQUcsQ0FBQyxhQUFhLENBQUMsVUFBVSxtQ0FBSSxFQUFFLENBQUM7U0FDeEMsQ0FBQztRQUNGLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMzRCxPQUFPLENBQUMsZ0JBQWdCLEdBQUcsTUFBQSxHQUFHLENBQUMsYUFBYSxDQUFDLGdCQUFnQixtQ0FBSSxFQUFFLENBQUM7UUFDcEUsT0FBTyxDQUFDLDZCQUE2QixHQUFHLDhCQUFhLENBQUMsZ0NBQWdDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUYsT0FBTyxDQUFDLGtDQUFrQyxHQUFHLDhCQUFhLENBQUMscUNBQXFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEcsT0FBTyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVPLHVCQUF1QixDQUFDLFlBQTBCOztRQUN4RCxNQUFNLGtCQUFrQixHQUFHLDhCQUFhLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0YsTUFBTSwrQkFBK0IsR0FBRyxNQUFBLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsT0FBaUIsQ0FBQyxtQ0FBSSxFQUFFLENBQUM7UUFDcEcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdFLE9BQU8seUNBQW1CLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDcEYsR0FBRyxrQkFBa0I7WUFDckIsR0FBRywrQkFBK0I7U0FDbkMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHVCQUF1QixDQUFDLFlBQTBCOztRQUN4RCxNQUFNLGtCQUFrQixHQUFHLDhCQUFhLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0YsTUFBTSwrQkFBK0IsR0FBRyxNQUFBLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsT0FBaUIsQ0FBQyxtQ0FBSSxFQUFFLENBQUM7UUFDcEcsT0FBTyx5Q0FBbUIsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwRixHQUFHLGtCQUFrQjtZQUNyQixHQUFHLCtCQUErQjtZQUNsQztnQkFDRSxTQUFTLEVBQUUsdUNBQTBCO2dCQUNyQyxLQUFLLEVBQUUsMkJBQWMsQ0FBQyxPQUFPO2FBQzlCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLDRCQUE0QixDQUFDLFlBQTBCOztRQUM3RCxNQUFNLGtCQUFrQixHQUFHLDhCQUFhLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0YsTUFBTSwrQkFBK0IsR0FBRyxNQUFBLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsT0FBaUIsQ0FBQyxtQ0FBSSxFQUFFLENBQUM7UUFDcEcsT0FBTyx5Q0FBbUIsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNwRixHQUFHLGtCQUFrQjtZQUNyQixHQUFHLCtCQUErQjtZQUNsQztnQkFDRSxTQUFTLEVBQUUsdUNBQTBCO2dCQUNyQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVE7YUFDckI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8seUJBQXlCLENBQUMsWUFBMEI7UUFDMUQsTUFBTSxrQkFBa0IsR0FBRyw4QkFBYSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9GLElBQUksQ0FBQztZQUNILE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BELENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLDRCQUFtQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyx1Q0FBMEIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDckgsTUFBTSxDQUFDLENBQUM7WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQztZQUNILE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BELENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLDZCQUFvQixDQUFDLEVBQUUsQ0FBQztnQkFDekMsTUFBTSxDQUFDLENBQUM7WUFDVixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLDRCQUE0QixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTSxLQUFLO1FBQ1YsTUFBTSxrQkFBa0IsR0FBc0QsRUFBRSxDQUFDO1FBQ2pGLEtBQUssTUFBTSxZQUFZLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzlDLE1BQU0sa0JBQWtCLEdBQUcsOEJBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMvRixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDM0QsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLDJCQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzVDLGtCQUFrQixDQUFDLElBQUksQ0FBQztvQkFDdEIsT0FBTyxFQUFFLFlBQVksQ0FBQyxPQUFPO29CQUM3QixPQUFPLEVBQUUsWUFBWSxDQUFDLE9BQU87b0JBQzdCLFVBQVUsRUFBRSxrQkFBa0I7b0JBQzlCLEtBQUs7aUJBQ04sQ0FBQyxDQUFDO1lBQ0wsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLGtCQUFrQixDQUFDLElBQUksQ0FBQztvQkFDdEIsUUFBUSxFQUFHLFlBQWtDLENBQUMsUUFBUTtvQkFDdEQsT0FBTyxFQUFFLFlBQVksQ0FBQyxPQUFPO29CQUM3QixPQUFPLEVBQUUsWUFBWSxDQUFDLE9BQU87b0JBQzdCLFVBQVUsRUFBRSxrQkFBa0I7b0JBQzlCLEtBQUs7aUJBQ04sQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7UUFDRCxNQUFNLEVBQUUsR0FBRyw4QkFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEUsT0FBTyxJQUFJLG1DQUFnQixDQUN6QixFQUFFLEVBQ0YsSUFBSSxDQUFDLElBQUksRUFDVCxJQUFJLENBQUMsS0FBSyxFQUNWLElBQUksQ0FBQyxRQUFRLEVBQ2IsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsV0FBVyxFQUNoQixrQkFBa0IsRUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQ2hCLElBQUksQ0FBQyxVQUFVLEVBQ2YsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsVUFBVSxFQUNmLElBQUksQ0FBQyw2QkFBNkIsRUFDbEMsSUFBSSxDQUFDLGtDQUFrQyxDQUN4QyxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBdElELGtEQXNJQztBQUVELHVEQUEwQixDQUFDLHdCQUF3QixDQUFDLG9DQUF1QixFQUFFLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDIn0=
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWdnUHJvdG90eXBlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL0VnZ1Byb3RvdHlwZUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOERBQWlDO0FBQ2pDLDBEQUFxRztBQWFyRyxrREFLMkI7QUFDM0Isd0VBQXFFO0FBQ3JFLDBEQUFzRDtBQUN0RCx5REFBc0Q7QUFDdEQsc0ZBQW1GO0FBQ25GLHNDQUFzRTtBQUV0RSxNQUFhLG1CQUFtQjtJQUFoQztRQU9VLGtCQUFhLEdBQTRDLEVBQUUsQ0FBQztRQUU1RCxlQUFVLEdBQW9CLEVBQUUsQ0FBQztRQUNqQyxxQkFBZ0IsR0FBeUMsRUFBRSxDQUFDO0lBMEh0RSxDQUFDO0lBckhDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBaUM7O1FBQzdDLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsR0FBRyxDQUFDO1FBQ2hDLE1BQU0sUUFBUSxHQUFHLDhCQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELElBQUEscUJBQU0sRUFBQyxRQUFRLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUN0QyxNQUFNLE9BQU8sR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFDMUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDdEIsT0FBTyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztRQUN0QyxPQUFPLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQ2hELE9BQU8sQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7UUFDOUMsT0FBTyxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUNwRCxPQUFPLENBQUMsUUFBUSxHQUFHLFFBQVMsQ0FBQztRQUM3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
@@ -1,5 +1,6 @@
1
1
  import { EggLoadUnitType } from '@eggjs/tegg-types';
2
- import type { EggProtoImplClass, EggPrototype, Loader, LoadUnit, LoadUnitLifecycleContext, QualifierInfo } from '@eggjs/tegg-types';
2
+ import type { EggProtoImplClass, EggPrototype, LoadUnit, LoadUnitLifecycleContext, QualifierInfo } from '@eggjs/tegg-types';
3
+ import { GlobalGraph } from '../model/graph/GlobalGraph';
3
4
  export declare class ModuleGraph {
4
5
  private graph;
5
6
  clazzList: EggProtoImplClass[];
@@ -11,14 +12,15 @@ export declare class ModuleGraph {
11
12
  sort(): void;
12
13
  }
13
14
  export declare class ModuleLoadUnit implements LoadUnit {
14
- private loader;
15
15
  private protoMap;
16
+ private protos;
16
17
  private clazzList;
17
18
  readonly id: string;
18
19
  readonly name: string;
19
20
  readonly unitPath: string;
20
21
  readonly type = EggLoadUnitType.MODULE;
21
- constructor(name: string, unitPath: string, loader: Loader);
22
+ get globalGraph(): GlobalGraph;
23
+ constructor(name: string, unitPath: string);
22
24
  private doLoadClazz;
23
25
  private loadClazz;
24
26
  preLoad(): Promise<void>;
@@ -8,15 +8,17 @@ const node_assert_1 = __importDefault(require("node:assert"));
8
8
  const node_path_1 = __importDefault(require("node:path"));
9
9
  const tegg_types_1 = require("@eggjs/tegg-types");
10
10
  const tegg_common_util_1 = require("@eggjs/tegg-common-util");
11
- const core_decorator_1 = require("@eggjs/core-decorator");
12
- const egg_errors_1 = require("egg-errors");
13
11
  const tegg_lifecycle_1 = require("@eggjs/tegg-lifecycle");
14
12
  const EggPrototypeFactory_1 = require("../factory/EggPrototypeFactory");
15
13
  const LoadUnitFactory_1 = require("../factory/LoadUnitFactory");
16
14
  const EggPrototypeCreatorFactory_1 = require("../factory/EggPrototypeCreatorFactory");
17
15
  const errors_1 = require("../errors");
18
- const LoadUnitMultiInstanceProtoHook_1 = require("./LoadUnitMultiInstanceProtoHook");
16
+ const egg_errors_1 = require("egg-errors");
17
+ const core_decorator_1 = require("@eggjs/core-decorator");
18
+ const ClassProtoDescriptor_1 = require("../model/ProtoDescriptor/ClassProtoDescriptor");
19
+ const GlobalGraph_1 = require("../model/graph/GlobalGraph");
19
20
  let id = 0;
21
+ // TODO del ModuleGraph in next major version
20
22
  class ProtoNode {
21
23
  constructor(clazz, objName, initType, qualifiers) {
22
24
  this.name = objName;
@@ -38,7 +40,7 @@ class ProtoNode {
38
40
  return (selfQualifiers === null || selfQualifiers === void 0 ? void 0 : selfQualifiers.value) === qualifier.value;
39
41
  }
40
42
  toString() {
41
- return `${this.clazz.name}@${core_decorator_1.PrototypeUtil.getFilePath(this.clazz)}`;
43
+ return `${this.clazz.name}@${this.PrototypeUtil.getFilePath(this.clazz)}`;
42
44
  }
43
45
  }
44
46
  class ModuleGraph {
@@ -159,55 +161,40 @@ class ModuleGraph {
159
161
  }
160
162
  exports.ModuleGraph = ModuleGraph;
161
163
  class ModuleLoadUnit {
162
- constructor(name, unitPath, loader) {
164
+ get globalGraph() {
165
+ return GlobalGraph_1.GlobalGraph.instance;
166
+ }
167
+ constructor(name, unitPath) {
168
+ // private loader: Loader;
163
169
  this.protoMap = new Map();
164
170
  this.type = tegg_types_1.EggLoadUnitType.MODULE;
165
171
  this.id = tegg_lifecycle_1.IdenticalUtil.createLoadUnitId(name);
166
172
  this.name = name;
167
173
  this.unitPath = unitPath;
168
- this.loader = loader;
169
174
  }
170
175
  doLoadClazz() {
171
- const clazzList = this.loader.load();
172
- const result = clazzList.slice();
173
- for (const clazz of clazzList) {
174
- const defaultQualifier = [{
175
- attribute: tegg_types_1.InitTypeQualifierAttribute,
176
- value: core_decorator_1.PrototypeUtil.getInitType(clazz, {
177
- unitPath: this.unitPath,
178
- moduleName: this.name,
179
- }),
180
- }, {
181
- attribute: tegg_types_1.LoadUnitNameQualifierAttribute,
182
- value: this.name,
183
- }];
184
- defaultQualifier.forEach(qualifier => {
185
- core_decorator_1.QualifierUtil.addProtoQualifier(clazz, qualifier.attribute, qualifier.value);
186
- });
176
+ const protos = this.globalGraph.moduleProtoDescriptorMap.get(this.name);
177
+ if (protos) {
178
+ // TODO ModuleLoadUnit should support all proto descriptor
179
+ this.protos = protos.filter(t => ClassProtoDescriptor_1.ClassProtoDescriptor.isClassProtoDescriptor(t));
180
+ this.clazzList = this.protos.map(t => t.clazz);
187
181
  }
188
- for (const clazz of LoadUnitMultiInstanceProtoHook_1.LoadUnitMultiInstanceProtoHook.multiInstanceClazzSet) {
189
- const instanceProperty = core_decorator_1.PrototypeUtil.getMultiInstanceProperty(clazz, {
190
- moduleName: this.name,
191
- unitPath: this.unitPath,
192
- });
193
- if (instanceProperty) {
194
- result.push(clazz);
195
- }
182
+ else {
183
+ this.protos = [];
184
+ this.clazzList = [];
196
185
  }
197
- return result;
198
186
  }
199
187
  loadClazz() {
200
188
  if (!this.clazzList) {
201
- const clazzList = this.doLoadClazz();
202
- const protoGraph = new ModuleGraph(clazzList, this.unitPath, this.name);
203
- protoGraph.sort();
204
- this.clazzList = protoGraph.clazzList;
189
+ this.doLoadClazz();
205
190
  }
206
191
  }
207
192
  async preLoad() {
208
193
  var _a;
209
194
  this.loadClazz();
210
195
  for (const protoClass of this.clazzList) {
196
+ // TODO refactor lifecycle hook to ProtoDescriptor or EggPrototype
197
+ // ModuleLoadUnit should not use clazz list
211
198
  const fnName = tegg_lifecycle_1.LifecycleUtil.getStaticLifecycleHook('preLoad', protoClass);
212
199
  if (fnName) {
213
200
  await ((_a = protoClass[fnName]) === null || _a === void 0 ? void 0 : _a.call(protoClass));
@@ -216,11 +203,9 @@ class ModuleLoadUnit {
216
203
  }
217
204
  async init() {
218
205
  this.loadClazz();
219
- for (const clazz of this.clazzList) {
220
- const protos = await EggPrototypeCreatorFactory_1.EggPrototypeCreatorFactory.createProto(clazz, this);
221
- for (const proto of protos) {
222
- EggPrototypeFactory_1.EggPrototypeFactory.instance.registerPrototype(proto, this);
223
- }
206
+ for (const protoDescriptor of this.protos) {
207
+ const proto = await EggPrototypeCreatorFactory_1.EggPrototypeCreatorFactory.createProtoByDescriptor(protoDescriptor, this);
208
+ EggPrototypeFactory_1.EggPrototypeFactory.instance.registerPrototype(proto, this);
224
209
  }
225
210
  }
226
211
  containPrototype(proto) {
@@ -266,9 +251,9 @@ class ModuleLoadUnit {
266
251
  const pkg = require(pkgPath);
267
252
  (0, node_assert_1.default)(pkg.eggModule, `module config not found in package ${pkgPath}`);
268
253
  const { name } = pkg.eggModule;
269
- return new ModuleLoadUnit(name, ctx.unitPath, ctx.loader);
254
+ return new ModuleLoadUnit(name, ctx.unitPath);
270
255
  }
271
256
  }
272
257
  exports.ModuleLoadUnit = ModuleLoadUnit;
273
258
  LoadUnitFactory_1.LoadUnitFactory.registerLoadUnitCreator(tegg_types_1.EggLoadUnitType.MODULE, ModuleLoadUnit.createModule);
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlTG9hZFVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW1wbC9Nb2R1bGVMb2FkVW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw4REFBaUM7QUFDakMsMERBQTZCO0FBQzdCLGtEQUkyQjtBQVkzQiw4REFBb0U7QUFDcEUsMERBQXFFO0FBQ3JFLDJDQUFvRDtBQUNwRCwwREFBcUU7QUFDckUsd0VBQXFFO0FBQ3JFLGdFQUE2RDtBQUM3RCxzRkFBbUY7QUFDbkYsc0NBQWdEO0FBQ2hELHFGQUFrRjtBQUVsRixJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFFWCxNQUFNLFNBQVM7SUFPYixZQUNFLEtBQXdCLEVBQ3hCLE9BQXlCLEVBQ3pCLFFBQTRCLEVBQzVCLFVBQTJCO1FBRTNCLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBMkI7UUFDMUMsS0FBSyxNQUFNLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUNyQyxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQXdCO1FBQ3RDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNB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
259
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlTG9hZFVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW1wbC9Nb2R1bGVMb2FkVW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSw4REFBaUM7QUFDakMsMERBQTZCO0FBQzdCLGtEQUsyQjtBQVMzQiw4REFBb0U7QUFDcEUsMERBQXFFO0FBQ3JFLHdFQUFxRTtBQUNyRSxnRUFBNkQ7QUFDN0Qsc0ZBQW1GO0FBQ25GLHNDQUFnRDtBQUNoRCwyQ0FBb0Q7QUFDcEQsMERBQXFFO0FBQ3JFLHdGQUFxRjtBQUNyRiw0REFBeUQ7QUFFekQsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBRVgsNkNBQTZDO0FBQzdDLE1BQU0sU0FBUztJQVFiLFlBQ0UsS0FBd0IsRUFDeEIsT0FBeUIsRUFDekIsUUFBNEIsRUFDNUIsVUFBMkI7UUFFM0IsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUM7UUFDcEIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUEyQjtRQUMxQyxLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3JDLE9BQU8sS0FBSyxDQUFDO1lBQ2YsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxlQUFlLENBQUMsU0FBd0I7UUFDdEMsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxD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
@@ -0,0 +1,18 @@
1
+ import { EggProtoImplClass, ProtoDescriptor } from '@eggjs/tegg-types';
2
+ export interface ModuleDescriptor {
3
+ name: string;
4
+ unitPath: string;
5
+ optional?: boolean;
6
+ clazzList: EggProtoImplClass[];
7
+ multiInstanceClazzList: EggProtoImplClass[];
8
+ protos: ProtoDescriptor[];
9
+ }
10
+ export interface ModuleDumpOptions {
11
+ dumpDir?: string;
12
+ }
13
+ export declare class ModuleDescriptorDumper {
14
+ static stringifyDescriptor(moduleDescriptor: ModuleDescriptor): string;
15
+ static stringifyClazz(clazz: EggProtoImplClass, moduleDescriptor: ModuleDescriptor): string;
16
+ static dumpPath(desc: ModuleDescriptor, options?: ModuleDumpOptions): string;
17
+ static dump(desc: ModuleDescriptor, options?: ModuleDumpOptions): Promise<void>;
18
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ModuleDescriptorDumper = void 0;
7
+ const node_path_1 = __importDefault(require("node:path"));
8
+ const promises_1 = __importDefault(require("node:fs/promises"));
9
+ const core_decorator_1 = require("@eggjs/core-decorator");
10
+ const DUMP_PATH = process.env.MODULE_DUMP_PATH;
11
+ class ModuleDescriptorDumper {
12
+ static stringifyDescriptor(moduleDescriptor) {
13
+ return '{'
14
+ + `"name": "${moduleDescriptor.name}",`
15
+ + `"unitPath": "${moduleDescriptor.unitPath}",`
16
+ + (typeof moduleDescriptor.optional !== 'undefined' ? `"optional": ${moduleDescriptor.optional},` : '')
17
+ + `"clazzList": [${moduleDescriptor.clazzList.map(t => {
18
+ return ModuleDescriptorDumper.stringifyClazz(t, moduleDescriptor);
19
+ }).join(',')}],`
20
+ + `"multiInstanceClazzList": [${moduleDescriptor.multiInstanceClazzList.map(t => {
21
+ return ModuleDescriptorDumper.stringifyClazz(t, moduleDescriptor);
22
+ }).join(',')}],`
23
+ + `"protos": [${moduleDescriptor.protos.map(t => {
24
+ return JSON.stringify(t);
25
+ }).join(',')}]`
26
+ + '}';
27
+ }
28
+ static stringifyClazz(clazz, moduleDescriptor) {
29
+ return '{'
30
+ + `"name": "${clazz.name}",`
31
+ + (core_decorator_1.PrototypeUtil.getFilePath(clazz) ? `"filePath": "${node_path_1.default.relative(moduleDescriptor.unitPath, core_decorator_1.PrototypeUtil.getFilePath(clazz))}"` : '')
32
+ + '}';
33
+ }
34
+ static dumpPath(desc, options) {
35
+ var _a;
36
+ const dumpDir = (_a = DUMP_PATH !== null && DUMP_PATH !== void 0 ? DUMP_PATH : options === null || options === void 0 ? void 0 : options.dumpDir) !== null && _a !== void 0 ? _a : desc.unitPath;
37
+ return node_path_1.default.join(dumpDir, '.egg', `${desc.name}_module_desc.json`);
38
+ }
39
+ static async dump(desc, options) {
40
+ const dumpPath = ModuleDescriptorDumper.dumpPath(desc, options);
41
+ await promises_1.default.mkdir(node_path_1.default.dirname(dumpPath), { recursive: true });
42
+ await promises_1.default.writeFile(dumpPath, ModuleDescriptorDumper.stringifyDescriptor(desc));
43
+ }
44
+ }
45
+ exports.ModuleDescriptorDumper = ModuleDescriptorDumper;
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlRGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2RlbC9Nb2R1bGVEZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDBEQUE2QjtBQUM3QixnRUFBa0M7QUFFbEMsMERBQXNEO0FBRXRELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUM7QUFlL0MsTUFBYSxzQkFBc0I7SUFDakMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLGdCQUFrQztRQUMzRCxPQUFPLEdBQUc7Y0FDTixZQUFZLGdCQUFnQixDQUFDLElBQUksSUFBSTtjQUNyQyxnQkFBZ0IsZ0JBQWdCLENBQUMsUUFBUSxJQUFJO2NBQzdDLENBQUMsT0FBTyxnQkFBZ0IsQ0FBQyxRQUFRLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxlQUFlLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Y0FDckcsaUJBQWlCLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3BELE9BQU8sc0JBQXNCLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3BFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSTtjQUNkLDhCQUE4QixnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQzlFLE9BQU8sc0JBQXNCLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3BFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSTtjQUNkLGNBQWMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDOUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRztjQUNiLEdBQUcsQ0FBQztJQUNWLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQXdCLEVBQUUsZ0JBQWtDO1FBQ2hGLE9BQU8sR0FBRztjQUNOLFlBQVksS0FBSyxDQUFDLElBQUksSUFBSTtjQUMxQixDQUFDLDhCQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsbUJBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLDhCQUFhLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2NBQ3hJLEdBQUcsQ0FBQztJQUNWLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLElBQXNCLEVBQUUsT0FBMkI7O1FBQ2pFLE1BQU0sT0FBTyxHQUFHLE1BQUEsU0FBUyxhQUFULFNBQVMsY0FBVCxTQUFTLEdBQUksT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLE9BQU8sbUNBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUMvRCxPQUFPLG1CQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFzQixFQUFFLE9BQTJCO1FBQ25FLE1BQU0sUUFBUSxHQUFHLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDaEUsTUFBTSxrQkFBRSxDQUFDLEtBQUssQ0FBQyxtQkFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVELE1BQU0sa0JBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLHNCQUFzQixDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQztDQUNGO0FBbkNELHdEQW1DQyJ9
@@ -0,0 +1,32 @@
1
+ import { AccessLevel, InjectObjectDescriptor, ObjectInitTypeLike, ProtoDescriptor, ProtoDescriptorTypeLike, QualifierInfo } from '@eggjs/tegg-types';
2
+ export interface AbstractProtoDescriptorOptions {
3
+ name: PropertyKey;
4
+ accessLevel: AccessLevel;
5
+ initType: ObjectInitTypeLike;
6
+ qualifiers: QualifierInfo[];
7
+ protoImplType: string;
8
+ injectObjects: InjectObjectDescriptor[];
9
+ defineModuleName: string;
10
+ defineUnitPath: string;
11
+ instanceModuleName: string;
12
+ instanceDefineUnitPath: string;
13
+ type: ProtoDescriptorTypeLike;
14
+ properQualifiers: Record<PropertyKey, QualifierInfo[]>;
15
+ }
16
+ export declare abstract class AbstractProtoDescriptor implements ProtoDescriptor {
17
+ name: PropertyKey;
18
+ accessLevel: AccessLevel;
19
+ initType: ObjectInitTypeLike;
20
+ qualifiers: QualifierInfo[];
21
+ injectObjects: InjectObjectDescriptor[];
22
+ protoImplType: string;
23
+ defineModuleName: string;
24
+ defineUnitPath: string;
25
+ instanceModuleName: string;
26
+ instanceDefineUnitPath: string;
27
+ className?: string;
28
+ properQualifiers: Record<PropertyKey, QualifierInfo[]>;
29
+ type: ProtoDescriptorTypeLike;
30
+ protected constructor(options: AbstractProtoDescriptorOptions);
31
+ abstract equal(protoDescriptor: ProtoDescriptor): boolean;
32
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractProtoDescriptor = void 0;
4
+ class AbstractProtoDescriptor {
5
+ constructor(options) {
6
+ this.name = options.name;
7
+ this.accessLevel = options.accessLevel;
8
+ this.initType = options.initType;
9
+ this.qualifiers = options.qualifiers;
10
+ this.protoImplType = options.protoImplType;
11
+ this.injectObjects = options.injectObjects;
12
+ this.defineModuleName = options.defineModuleName;
13
+ this.defineUnitPath = options.defineUnitPath;
14
+ this.instanceModuleName = options.instanceModuleName;
15
+ this.instanceDefineUnitPath = options.instanceDefineUnitPath;
16
+ this.type = options.type;
17
+ this.properQualifiers = options.properQualifiers;
18
+ }
19
+ }
20
+ exports.AbstractProtoDescriptor = AbstractProtoDescriptor;
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RQcm90b0Rlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWwvUHJvdG9EZXNjcmlwdG9yL0Fic3RyYWN0UHJvdG9EZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXdCQSxNQUFzQix1QkFBdUI7SUFlM0MsWUFBc0IsT0FBdUM7UUFDM0QsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUN2QyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDakMsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUMzQyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDM0MsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQztRQUNqRCxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUM7UUFDN0MsSUFBSSxDQUFDLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztRQUNyRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsT0FBTyxDQUFDLHNCQUFzQixDQUFDO1FBQzdELElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDO0lBQ25ELENBQUM7Q0FHRjtBQS9CRCwwREErQkMifQ==
@@ -0,0 +1,12 @@
1
+ import { AbstractProtoDescriptor, AbstractProtoDescriptorOptions } from './AbstractProtoDescriptor';
2
+ import { EggProtoImplClass, ProtoDescriptor } from '@eggjs/tegg-types';
3
+ export interface ClassProtoDescriptorOptions extends Omit<AbstractProtoDescriptorOptions, 'type'> {
4
+ clazz: EggProtoImplClass;
5
+ }
6
+ export declare class ClassProtoDescriptor extends AbstractProtoDescriptor {
7
+ clazz: EggProtoImplClass;
8
+ clazzName: string;
9
+ static isClassProtoDescriptor(descriptor: ProtoDescriptor): descriptor is ClassProtoDescriptor;
10
+ constructor(options: ClassProtoDescriptorOptions);
11
+ equal(protoDescriptor: ProtoDescriptor): boolean;
12
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClassProtoDescriptor = void 0;
4
+ const core_decorator_1 = require("@eggjs/core-decorator");
5
+ const AbstractProtoDescriptor_1 = require("./AbstractProtoDescriptor");
6
+ const ProtoDescriptorType_1 = require("@eggjs/tegg-types/metadata/enum/ProtoDescriptorType");
7
+ class ClassProtoDescriptor extends AbstractProtoDescriptor_1.AbstractProtoDescriptor {
8
+ static isClassProtoDescriptor(descriptor) {
9
+ return descriptor.type === ProtoDescriptorType_1.ProtoDescriptorType.CLASS;
10
+ }
11
+ constructor(options) {
12
+ super({
13
+ type: ProtoDescriptorType_1.ProtoDescriptorType.CLASS,
14
+ ...options,
15
+ });
16
+ this.clazz = options.clazz;
17
+ this.className = this.clazz.name;
18
+ }
19
+ equal(protoDescriptor) {
20
+ if (!ClassProtoDescriptor.isClassProtoDescriptor(protoDescriptor)) {
21
+ return false;
22
+ }
23
+ return this.clazz === protoDescriptor.clazz
24
+ && this.name === protoDescriptor.name
25
+ && this.accessLevel === protoDescriptor.accessLevel
26
+ && this.initType === protoDescriptor.initType
27
+ && this.instanceModuleName === protoDescriptor.instanceModuleName
28
+ && core_decorator_1.QualifierUtil.equalQualifiers(this.qualifiers, protoDescriptor.qualifiers);
29
+ }
30
+ }
31
+ exports.ClassProtoDescriptor = ClassProtoDescriptor;
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xhc3NQcm90b0Rlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWwvUHJvdG9EZXNjcmlwdG9yL0NsYXNzUHJvdG9EZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDBEQUFzRDtBQUN0RCx1RUFBb0c7QUFFcEcsNkZBQTBGO0FBTTFGLE1BQWEsb0JBQXFCLFNBQVEsaURBQXVCO0lBSS9ELE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxVQUEyQjtRQUN2RCxPQUFRLFVBQXNDLENBQUMsSUFBSSxLQUFLLHlDQUFtQixDQUFDLEtBQUssQ0FBQztJQUNwRixDQUFDO0lBRUQsWUFBWSxPQUFvQztRQUM5QyxLQUFLLENBQUM7WUFDSixJQUFJLEVBQUUseUNBQW1CLENBQUMsS0FBSztZQUMvQixHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztJQUNuQyxDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWdDO1FBQ3BDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxzQkFBc0IsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1lBQ2xFLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxlQUFlLENBQUMsS0FBSztlQUN0QyxJQUFJLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxJQUFJO2VBQ2xDLElBQUksQ0FBQyxXQUFXLEtBQUssZUFBZSxDQUFDLFdBQVc7ZUFDaEQsSUFBSSxDQUFDLFFBQVEsS0FBSyxlQUFlLENBQUMsUUFBUTtlQUMxQyxJQUFJLENBQUMsa0JBQWtCLEtBQUssZUFBZSxDQUFDLGtCQUFrQjtlQUM5RCw4QkFBYSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsRixDQUFDO0NBQ0Y7QUE1QkQsb0RBNEJDIn0=
@@ -0,0 +1,26 @@
1
+ import { EggProtoImplClass, ObjectInitTypeLike, ProtoDescriptor, QualifierInfo, MultiInstancePrototypeGetObjectsContext } from '@eggjs/tegg-types';
2
+ import { ProtoSelectorContext } from './graph/ProtoSelector';
3
+ export declare class ProtoDescriptorHelper {
4
+ #private;
5
+ static addDefaultQualifier(qualifiers: QualifierInfo[], initType: ObjectInitTypeLike, loadUnitName: string): QualifierInfo[];
6
+ static createByMultiInstanceClazz(clazz: EggProtoImplClass, options: {
7
+ defineModuleName: string;
8
+ defineUnitPath: string;
9
+ instanceModuleName: string;
10
+ instanceDefineUnitPath: string;
11
+ }): ProtoDescriptor[];
12
+ static createByDynamicMultiInstanceClazz(clazz: EggProtoImplClass, options: {
13
+ defineModuleName: string;
14
+ defineUnitPath: string;
15
+ instanceModuleName: string;
16
+ instanceDefineUnitPath: string;
17
+ }): ProtoDescriptor[];
18
+ static createByStaticMultiInstanceClazz(clazz: EggProtoImplClass, options: {
19
+ defineModuleName: string;
20
+ defineUnitPath: string;
21
+ instanceModuleName: string;
22
+ instanceDefineUnitPath: string;
23
+ }): ProtoDescriptor[];
24
+ static createByInstanceClazz(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): ProtoDescriptor;
25
+ static selectProto(proto: ProtoDescriptor, ctx: ProtoSelectorContext): boolean;
26
+ }
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ var _a, _ProtoDescriptorHelper_createByMultiInstanceClazz;
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ProtoDescriptorHelper = void 0;
13
+ const core_decorator_1 = require("@eggjs/core-decorator");
14
+ const tegg_types_1 = require("@eggjs/tegg-types");
15
+ const node_assert_1 = __importDefault(require("node:assert"));
16
+ const ClassProtoDescriptor_1 = require("./ProtoDescriptor/ClassProtoDescriptor");
17
+ class ProtoDescriptorHelper {
18
+ static addDefaultQualifier(qualifiers, initType, loadUnitName) {
19
+ const defaultQualifiers = [{
20
+ attribute: tegg_types_1.InitTypeQualifierAttribute,
21
+ value: initType,
22
+ }, {
23
+ attribute: tegg_types_1.LoadUnitNameQualifierAttribute,
24
+ value: loadUnitName,
25
+ }];
26
+ const res = [
27
+ ...qualifiers,
28
+ ];
29
+ for (const defaultQualifier of defaultQualifiers) {
30
+ if (!qualifiers.find(t => t.attribute === defaultQualifier.attribute)) {
31
+ res.push(defaultQualifier);
32
+ }
33
+ }
34
+ return res;
35
+ }
36
+ static createByMultiInstanceClazz(clazz, options) {
37
+ (0, node_assert_1.default)(core_decorator_1.PrototypeUtil.isEggMultiInstancePrototype(clazz), `clazz ${clazz.name} is not MultiInstancePrototype`);
38
+ const type = core_decorator_1.PrototypeUtil.getEggMultiInstancePrototypeType(clazz);
39
+ if (type === tegg_types_1.MultiInstanceType.DYNAMIC) {
40
+ return _a.createByDynamicMultiInstanceClazz(clazz, options);
41
+ }
42
+ else if (type === tegg_types_1.MultiInstanceType.STATIC) {
43
+ // static multi instance proto create only in self module
44
+ if (options.defineModuleName === options.instanceModuleName) {
45
+ return _a.createByStaticMultiInstanceClazz(clazz, options);
46
+ }
47
+ }
48
+ return [];
49
+ }
50
+ static createByDynamicMultiInstanceClazz(clazz, options) {
51
+ (0, node_assert_1.default)(core_decorator_1.PrototypeUtil.isEggMultiInstancePrototype(clazz), `clazz ${clazz.name} is not MultiInstancePrototype`);
52
+ const instanceProperty = core_decorator_1.PrototypeUtil.getDynamicMultiInstanceProperty(clazz, {
53
+ moduleName: options.instanceModuleName,
54
+ unitPath: options.instanceDefineUnitPath,
55
+ });
56
+ (0, node_assert_1.default)(instanceProperty, `not found PrototypeInfo for clazz ${clazz.name}`);
57
+ return __classPrivateFieldGet(_a, _a, "m", _ProtoDescriptorHelper_createByMultiInstanceClazz).call(_a, clazz, instanceProperty, options);
58
+ }
59
+ static createByStaticMultiInstanceClazz(clazz, options) {
60
+ (0, node_assert_1.default)(core_decorator_1.PrototypeUtil.isEggMultiInstancePrototype(clazz), `clazz ${clazz.name} is not MultiInstancePrototype`);
61
+ const instanceProperty = core_decorator_1.PrototypeUtil.getStaticMultiInstanceProperty(clazz);
62
+ (0, node_assert_1.default)(instanceProperty, `not found PrototypeInfo for clazz ${clazz.name}`);
63
+ return __classPrivateFieldGet(_a, _a, "m", _ProtoDescriptorHelper_createByMultiInstanceClazz).call(_a, clazz, instanceProperty, options);
64
+ }
65
+ static createByInstanceClazz(clazz, ctx) {
66
+ (0, node_assert_1.default)(core_decorator_1.PrototypeUtil.isEggPrototype(clazz), `clazz ${clazz.name} is not EggPrototype`);
67
+ (0, node_assert_1.default)(!core_decorator_1.PrototypeUtil.isEggMultiInstancePrototype(clazz), `clazz ${clazz.name} is not Prototype`);
68
+ const property = core_decorator_1.PrototypeUtil.getProperty(clazz);
69
+ (0, node_assert_1.default)(property, `not found PrototypeInfo for clazz ${clazz.name}`);
70
+ const protoQualifiers = _a.addDefaultQualifier(core_decorator_1.QualifierUtil.getProtoQualifiers(clazz), property.initType, ctx.moduleName);
71
+ const injectObjects = core_decorator_1.PrototypeUtil.getInjectObjects(clazz)
72
+ .map(t => {
73
+ const qualifiers = core_decorator_1.QualifierUtil.getProperQualifiers(clazz, t.refName);
74
+ return {
75
+ ...t,
76
+ qualifiers,
77
+ };
78
+ });
79
+ return new ClassProtoDescriptor_1.ClassProtoDescriptor({
80
+ name: property.name,
81
+ protoImplType: property.protoImplType,
82
+ accessLevel: property.accessLevel,
83
+ initType: property.initType,
84
+ qualifiers: protoQualifiers,
85
+ injectObjects,
86
+ instanceDefineUnitPath: ctx.unitPath,
87
+ instanceModuleName: ctx.moduleName,
88
+ defineUnitPath: ctx.unitPath,
89
+ defineModuleName: ctx.moduleName,
90
+ clazz,
91
+ properQualifiers: {},
92
+ });
93
+ }
94
+ static selectProto(proto, ctx) {
95
+ // 1. name match
96
+ if (proto.name !== ctx.name) {
97
+ return false;
98
+ }
99
+ // 2. access level match
100
+ if (proto.accessLevel !== tegg_types_1.AccessLevel.PUBLIC && proto.instanceModuleName !== ctx.moduleName) {
101
+ return false;
102
+ }
103
+ // 3. qualifier match
104
+ if (!core_decorator_1.QualifierUtil.matchQualifiers(proto.qualifiers, ctx.qualifiers)) {
105
+ return false;
106
+ }
107
+ return true;
108
+ }
109
+ }
110
+ exports.ProtoDescriptorHelper = ProtoDescriptorHelper;
111
+ _a = ProtoDescriptorHelper, _ProtoDescriptorHelper_createByMultiInstanceClazz = function _ProtoDescriptorHelper_createByMultiInstanceClazz(clazz, instanceProperty, options) {
112
+ const res = [];
113
+ for (const obj of instanceProperty.objects) {
114
+ let qualifiers = [
115
+ ...core_decorator_1.QualifierUtil.getProtoQualifiers(clazz),
116
+ ...obj.qualifiers,
117
+ ];
118
+ qualifiers = _a.addDefaultQualifier(qualifiers, instanceProperty.initType, options.instanceModuleName);
119
+ const injectObjects = core_decorator_1.PrototypeUtil.getInjectObjects(clazz)
120
+ .map(t => {
121
+ var _b, _c;
122
+ const qualifiers = core_decorator_1.QualifierUtil.getProperQualifiers(clazz, t.refName);
123
+ const instanceQualifier = (_c = (_b = obj.properQualifiers) === null || _b === void 0 ? void 0 : _b[t.refName]) !== null && _c !== void 0 ? _c : [];
124
+ return {
125
+ ...t,
126
+ qualifiers: [
127
+ ...qualifiers,
128
+ ...instanceQualifier,
129
+ ],
130
+ };
131
+ });
132
+ res.push(new ClassProtoDescriptor_1.ClassProtoDescriptor({
133
+ name: obj.name,
134
+ accessLevel: instanceProperty.accessLevel,
135
+ initType: instanceProperty.initType,
136
+ protoImplType: instanceProperty.protoImplType,
137
+ qualifiers,
138
+ injectObjects,
139
+ instanceModuleName: options.instanceModuleName,
140
+ instanceDefineUnitPath: options.instanceDefineUnitPath,
141
+ defineModuleName: options.defineModuleName,
142
+ defineUnitPath: options.defineUnitPath,
143
+ clazz,
144
+ properQualifiers: obj.properQualifiers || {},
145
+ }));
146
+ }
147
+ return res;
148
+ };
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdG9EZXNjcmlwdG9ySGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZGVsL1Byb3RvRGVzY3JpcHRvckhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSwwREFJK0I7QUFDL0Isa0RBVTJCO0FBQzNCLDhEQUFpQztBQUVqQyxpRkFBOEU7QUFFOUUsTUFBYSxxQkFBcUI7SUFDaEMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLFVBQTJCLEVBQUUsUUFBNEIsRUFBRSxZQUFvQjtRQUN4RyxNQUFNLGlCQUFpQixHQUFHLENBQUM7Z0JBQ3pCLFNBQVMsRUFBRSx1Q0FBMEI7Z0JBQ3JDLEtBQUssRUFBRSxRQUFRO2FBQ2hCLEVBQUU7Z0JBQ0QsU0FBUyxFQUFFLDJDQUE4QjtnQkFDekMsS0FBSyxFQUFFLFlBQVk7YUFDcEIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxHQUFHLEdBQUc7WUFDVixHQUFHLFVBQVU7U0FDZCxDQUFDO1FBQ0YsS0FBSyxNQUFNLGdCQUFnQixJQUFJLGlCQUFpQixFQUFFLENBQUM7WUFDakQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3RFLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUM3QixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxLQUF3QixFQUFFLE9BSzNEO1FBQ0MsSUFBQSxxQkFBTSxFQUFDLDhCQUFhLENBQUMsMkJBQTJCLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxLQUFLLENBQUMsSUFBSSxnQ0FBZ0MsQ0FBQyxDQUFDO1FBQzlHLE1BQU0sSUFBSSxHQUFHLDhCQUFhLENBQUMsZ0NBQWdDLENB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
@@ -0,0 +1,55 @@
1
+ import { ModuleReference } from '@eggjs/tegg-common-util';
2
+ import { InjectObjectDescriptor, ProtoDescriptor } from '@eggjs/tegg-types';
3
+ import { GlobalModuleNode } from './GlobalModuleNode';
4
+ import { ModuleDescriptor } from '../ModuleDescriptor';
5
+ export interface GlobalGraphOptions {
6
+ strict?: boolean;
7
+ }
8
+ /**
9
+ * Sort all prototypes and modules in app.
10
+ * - 1. LoaderFactory.loadApp: get ModuleDescriptors
11
+ * - 2. GlobalGraph.create: create global graph instance
12
+ * - 3. graph.build:
13
+ * - check duplicated prototypes exits
14
+ * - check inject object exists (only in strict mode,
15
+ * can register proto in hooks now, in next major version,
16
+ * should use load to create dynamic ProtoDescriptor and delete
17
+ * strict false options
18
+ * )
19
+ * - 4. graph.sort: build moduleConfigList and moduleProtoDescriptorMap
20
+ */
21
+ export declare class GlobalGraph {
22
+ #private;
23
+ /**
24
+ * Vertex: ModuleNode, collect prototypes in module
25
+ * Edge: ModuleDependencyMeta, prototype and it's inject object
26
+ * @private
27
+ */
28
+ private moduleGraph;
29
+ /**
30
+ * Vertex: ProtoNode, collect all prototypes in app
31
+ * Edge: ProtoDependencyMeta, inject object
32
+ * @private
33
+ */
34
+ private protoGraph;
35
+ /**
36
+ * The order of the moduleConfigList is the order in which they are instantiated
37
+ */
38
+ moduleConfigList: readonly ModuleReference[];
39
+ /**
40
+ * key: module name
41
+ * value: ProtoDescriptor in module, the order is the order in which they are instantiated
42
+ */
43
+ moduleProtoDescriptorMap: Map<string, ProtoDescriptor[]>;
44
+ strict: boolean;
45
+ /**
46
+ * The global instance used in ModuleLoadUnit
47
+ */
48
+ static instance?: GlobalGraph;
49
+ constructor(options?: GlobalGraphOptions);
50
+ addModuleNode(moduleNode: GlobalModuleNode): void;
51
+ build(): void;
52
+ findInjectProto(proto: ProtoDescriptor, injectObject: InjectObjectDescriptor): ProtoDescriptor | undefined;
53
+ sort(): void;
54
+ static create(moduleDescriptors: ModuleDescriptor[], options?: GlobalGraphOptions): GlobalGraph;
55
+ }
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
+ };
7
+ var _GlobalGraph_instances, _GlobalGraph_findDependencyProtoWithDefaultQualifiers, _GlobalGraph_findDependencyProtoNode, _GlobalGraph_findModuleNode, _GlobalGraph_sortModule, _GlobalGraph_sortClazz;
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.GlobalGraph = void 0;
10
+ const tegg_common_util_1 = require("@eggjs/tegg-common-util");
11
+ const tegg_types_1 = require("@eggjs/tegg-types");
12
+ const GlobalModuleNode_1 = require("./GlobalModuleNode");
13
+ const ProtoNode_1 = require("./ProtoNode");
14
+ const egg_errors_1 = require("egg-errors");
15
+ const errors_1 = require("../../errors");
16
+ const GlobalModuleNodeBuilder_1 = require("./GlobalModuleNodeBuilder");
17
+ /**
18
+ * Sort all prototypes and modules in app.
19
+ * - 1. LoaderFactory.loadApp: get ModuleDescriptors
20
+ * - 2. GlobalGraph.create: create global graph instance
21
+ * - 3. graph.build:
22
+ * - check duplicated prototypes exits
23
+ * - check inject object exists (only in strict mode,
24
+ * can register proto in hooks now, in next major version,
25
+ * should use load to create dynamic ProtoDescriptor and delete
26
+ * strict false options
27
+ * )
28
+ * - 4. graph.sort: build moduleConfigList and moduleProtoDescriptorMap
29
+ */
30
+ class GlobalGraph {
31
+ constructor(options) {
32
+ var _a;
33
+ _GlobalGraph_instances.add(this);
34
+ this.moduleGraph = new tegg_common_util_1.Graph();
35
+ this.protoGraph = new tegg_common_util_1.Graph();
36
+ this.strict = (_a = options === null || options === void 0 ? void 0 : options.strict) !== null && _a !== void 0 ? _a : false;
37
+ this.moduleProtoDescriptorMap = new Map();
38
+ }
39
+ addModuleNode(moduleNode) {
40
+ if (!this.moduleGraph.addVertex(new tegg_common_util_1.GraphNode(moduleNode))) {
41
+ throw new Error(`duplicate module: ${moduleNode}`);
42
+ }
43
+ for (const protoNode of moduleNode.protos) {
44
+ if (!this.protoGraph.addVertex(protoNode)) {
45
+ throw new Error(`duplicate proto: ${protoNode.val}`);
46
+ }
47
+ }
48
+ }
49
+ build() {
50
+ for (const moduleNode of this.moduleGraph.nodes.values()) {
51
+ for (const protoNode of moduleNode.val.protos) {
52
+ for (const injectObj of protoNode.val.proto.injectObjects) {
53
+ const injectProto = __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_findDependencyProtoNode).call(this, protoNode.val.proto, injectObj);
54
+ if (!injectProto) {
55
+ if (!this.strict) {
56
+ continue;
57
+ }
58
+ throw egg_errors_1.FrameworkErrorFormater.formatError(new errors_1.EggPrototypeNotFound(injectObj.objName, protoNode.val.proto.instanceModuleName));
59
+ }
60
+ this.protoGraph.addEdge(protoNode, injectProto, new ProtoNode_1.ProtoDependencyMeta({
61
+ injectObj: injectObj.objName,
62
+ }));
63
+ const injectModule = __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_findModuleNode).call(this, injectProto.val.proto.instanceModuleName);
64
+ if (!injectModule) {
65
+ if (!this.strict) {
66
+ continue;
67
+ }
68
+ throw new Error(`not found module ${injectProto.val.proto.instanceModuleName}`);
69
+ }
70
+ if (moduleNode.val.id !== injectModule.val.id) {
71
+ this.moduleGraph.addEdge(moduleNode, injectModule, new GlobalModuleNode_1.ModuleDependencyMeta(protoNode.val.proto, injectObj.objName));
72
+ }
73
+ }
74
+ }
75
+ }
76
+ }
77
+ findInjectProto(proto, injectObject) {
78
+ const edge = this.protoGraph.findToNode(ProtoNode_1.ProtoNode.createProtoId(proto), new ProtoNode_1.ProtoDependencyMeta({
79
+ injectObj: injectObject.objName,
80
+ }));
81
+ return edge === null || edge === void 0 ? void 0 : edge.val.proto;
82
+ }
83
+ sort() {
84
+ __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_sortModule).call(this);
85
+ __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_sortClazz).call(this);
86
+ }
87
+ static create(moduleDescriptors, options) {
88
+ var _a;
89
+ const graph = new GlobalGraph(options);
90
+ for (const moduleDescriptor of moduleDescriptors) {
91
+ const moduleNodeBuilder = new GlobalModuleNodeBuilder_1.GlobalModuleNodeBuilder({
92
+ name: moduleDescriptor.name,
93
+ unitPath: moduleDescriptor.unitPath,
94
+ optional: (_a = moduleDescriptor.optional) !== null && _a !== void 0 ? _a : false,
95
+ });
96
+ for (const clazz of moduleDescriptor.clazzList) {
97
+ moduleNodeBuilder.addClazz(clazz);
98
+ }
99
+ for (const clazz of moduleDescriptor.multiInstanceClazzList) {
100
+ moduleNodeBuilder.addMultiInstanceClazz(clazz, moduleDescriptor.name, moduleDescriptor.unitPath);
101
+ }
102
+ graph.addModuleNode(moduleNodeBuilder.build());
103
+ }
104
+ return graph;
105
+ }
106
+ }
107
+ exports.GlobalGraph = GlobalGraph;
108
+ _GlobalGraph_instances = new WeakSet(), _GlobalGraph_findDependencyProtoWithDefaultQualifiers = function _GlobalGraph_findDependencyProtoWithDefaultQualifiers(proto, injectObject, qualifiers) {
109
+ // TODO perf O(n(proto count)*m(inject count)*n)
110
+ const result = [];
111
+ for (const node of this.protoGraph.nodes.values()) {
112
+ if (node.val.selectProto({
113
+ name: injectObject.objName,
114
+ qualifiers: [
115
+ ...injectObject.qualifiers,
116
+ ...qualifiers,
117
+ ],
118
+ moduleName: proto.instanceModuleName,
119
+ })) {
120
+ result.push(node);
121
+ }
122
+ }
123
+ return result;
124
+ }, _GlobalGraph_findDependencyProtoNode = function _GlobalGraph_findDependencyProtoNode(proto, injectObject) {
125
+ // 1. find proto with request
126
+ // 2. try to add Context qualifier to find
127
+ // 3. try to add self init type qualifier to find
128
+ const protos = __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_findDependencyProtoWithDefaultQualifiers).call(this, proto, injectObject, []);
129
+ if (protos.length === 0) {
130
+ return;
131
+ // throw FrameworkErrorFormater.formatError(new EggPrototypeNotFound(injectObject.objName, proto.instanceModuleName));
132
+ }
133
+ if (protos.length === 1) {
134
+ return protos[0];
135
+ }
136
+ const protoWithContext = __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_findDependencyProtoWithDefaultQualifiers).call(this, proto, injectObject, [{
137
+ attribute: tegg_types_1.InitTypeQualifierAttribute,
138
+ value: tegg_types_1.ObjectInitType.CONTEXT,
139
+ }]);
140
+ if (protoWithContext.length === 1) {
141
+ return protoWithContext[0];
142
+ }
143
+ const protoWithSelfInitType = __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_findDependencyProtoWithDefaultQualifiers).call(this, proto, injectObject, [{
144
+ attribute: tegg_types_1.InitTypeQualifierAttribute,
145
+ value: proto.initType,
146
+ }]);
147
+ if (protoWithSelfInitType.length === 1) {
148
+ return protoWithSelfInitType[0];
149
+ }
150
+ const loadUnitQualifier = injectObject.qualifiers.find(t => t.attribute === tegg_types_1.LoadUnitNameQualifierAttribute);
151
+ if (!loadUnitQualifier) {
152
+ return __classPrivateFieldGet(this, _GlobalGraph_instances, "m", _GlobalGraph_findDependencyProtoNode).call(this, proto, {
153
+ ...injectObject,
154
+ qualifiers: [
155
+ ...injectObject.qualifiers,
156
+ {
157
+ attribute: tegg_types_1.LoadUnitNameQualifierAttribute,
158
+ value: proto.instanceModuleName,
159
+ },
160
+ ],
161
+ });
162
+ }
163
+ throw egg_errors_1.FrameworkErrorFormater.formatError(new errors_1.MultiPrototypeFound(injectObject.objName, injectObject.qualifiers));
164
+ }, _GlobalGraph_findModuleNode = function _GlobalGraph_findModuleNode(moduleName) {
165
+ for (const node of this.moduleGraph.nodes.values()) {
166
+ if (node.val.name === moduleName) {
167
+ return node;
168
+ }
169
+ }
170
+ }, _GlobalGraph_sortModule = function _GlobalGraph_sortModule() {
171
+ const loopPath = this.moduleGraph.loopPath();
172
+ if (loopPath) {
173
+ throw new Error('module has recursive deps: ' + loopPath);
174
+ }
175
+ this.moduleConfigList = this.moduleGraph.sort()
176
+ .filter(t => {
177
+ return t.val.optional !== true || t.fromNodeMap.size > 0;
178
+ })
179
+ .map(t => {
180
+ return {
181
+ name: t.val.name,
182
+ path: t.val.unitPath,
183
+ optional: t.val.optional,
184
+ };
185
+ });
186
+ }, _GlobalGraph_sortClazz = function _GlobalGraph_sortClazz() {
187
+ const loopPath = this.protoGraph.loopPath();
188
+ if (loopPath) {
189
+ throw new Error('proto has recursive deps: ' + loopPath);
190
+ }
191
+ for (const proto of this.protoGraph.sort()) {
192
+ // // ignore the proto has no dependent
193
+ // if (proto.fromNodeMap.size === 0) continue;
194
+ const instanceModuleName = proto.val.proto.instanceModuleName;
195
+ let moduleProtoList = this.moduleProtoDescriptorMap.get(instanceModuleName);
196
+ if (!moduleProtoList) {
197
+ moduleProtoList = [];
198
+ this.moduleProtoDescriptorMap.set(instanceModuleName, moduleProtoList);
199
+ }
200
+ moduleProtoList.push(proto.val.proto);
201
+ }
202
+ };
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2xvYmFsR3JhcGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWwvZ3JhcGgvR2xvYmFsR3JhcGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsOERBQTRFO0FBQzVFLGtEQU0yQjtBQUMzQix5REFBNEU7QUFDNUUsMkNBQTZEO0FBQzdELDJDQUFvRDtBQUNwRCx5Q0FBeUU7QUFDekUsdUVBQW9FO0FBU3BFOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE1BQWEsV0FBVztJQTZCdEIsWUFBWSxPQUE0Qjs7O1FBQ3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSx3QkFBSyxFQUEwQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSx3QkFBSyxFQUFrQyxDQUFDO1FBQzlELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsTUFBTSxtQ0FBSSxLQUFLLENBQUM7UUFDdkMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUVELGFBQWEsQ0FBQyxVQUE0QjtRQUN4QyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSw0QkFBUyxDQUF5QyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDbkcsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsS0FBSyxNQUFNLFNBQVMsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7UUFDSCxDQUFD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
@@ -0,0 +1,25 @@
1
+ import { GraphNode, GraphNodeObj, EdgeMeta } from '@eggjs/tegg-common-util';
2
+ import { ProtoDependencyMeta, ProtoNode } from './ProtoNode';
3
+ import { ProtoDescriptor } from '@eggjs/tegg-types';
4
+ export interface GlobalModuleNodeOptions {
5
+ name: string;
6
+ unitPath: string;
7
+ optional: boolean;
8
+ }
9
+ export declare class ModuleDependencyMeta implements EdgeMeta {
10
+ readonly obj: ProtoDescriptor;
11
+ readonly injectObj: PropertyKey;
12
+ constructor(obj: ProtoDescriptor, injectObj: PropertyKey);
13
+ equal(meta: ModuleDependencyMeta): boolean;
14
+ toString(): string;
15
+ }
16
+ export declare class GlobalModuleNode implements GraphNodeObj {
17
+ readonly id: string;
18
+ readonly name: string;
19
+ readonly unitPath: string;
20
+ readonly optional: boolean;
21
+ readonly protos: GraphNode<ProtoNode, ProtoDependencyMeta>[];
22
+ constructor(options: GlobalModuleNodeOptions);
23
+ addProto(proto: ProtoDescriptor): void;
24
+ toString(): string;
25
+ }
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GlobalModuleNode = exports.ModuleDependencyMeta = void 0;
4
+ const tegg_common_util_1 = require("@eggjs/tegg-common-util");
5
+ const ProtoNode_1 = require("./ProtoNode");
6
+ class ModuleDependencyMeta {
7
+ constructor(obj, injectObj) {
8
+ this.obj = obj;
9
+ this.injectObj = injectObj;
10
+ }
11
+ equal(meta) {
12
+ return this.obj.equal(meta.obj)
13
+ && this.injectObj === meta.injectObj;
14
+ }
15
+ toString() {
16
+ return `Object ${String(this.obj.name)} inject ${String(this.injectObj)}`;
17
+ }
18
+ }
19
+ exports.ModuleDependencyMeta = ModuleDependencyMeta;
20
+ class GlobalModuleNode {
21
+ constructor(options) {
22
+ this.id = options.unitPath;
23
+ this.name = options.name;
24
+ this.unitPath = options.unitPath;
25
+ this.optional = options.optional;
26
+ this.protos = [];
27
+ }
28
+ addProto(proto) {
29
+ this.protos.push(new tegg_common_util_1.GraphNode(new ProtoNode_1.ProtoNode(proto)));
30
+ }
31
+ toString() {
32
+ return `${this.name}@${this.unitPath}`;
33
+ }
34
+ }
35
+ exports.GlobalModuleNode = GlobalModuleNode;
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2xvYmFsTW9kdWxlTm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2RlbC9ncmFwaC9HbG9iYWxNb2R1bGVOb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhEQUE0RTtBQUM1RSwyQ0FBNkQ7QUFTN0QsTUFBYSxvQkFBb0I7SUFDL0IsWUFBcUIsR0FBb0IsRUFBVyxTQUFzQjtRQUFyRCxRQUFHLEdBQUgsR0FBRyxDQUFpQjtRQUFXLGNBQVMsR0FBVCxTQUFTLENBQWE7SUFDMUUsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUEwQjtRQUM5QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7ZUFDMUIsSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxVQUFVLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0NBQ0Y7QUFaRCxvREFZQztBQUVELE1BQWEsZ0JBQWdCO0lBTzNCLFlBQVksT0FBZ0M7UUFDMUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBc0I7UUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSw0QkFBUyxDQUFDLElBQUkscUJBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDekMsQ0FBQztDQUNGO0FBdEJELDRDQXNCQyJ9
@@ -0,0 +1,13 @@
1
+ import { EggProtoImplClass } from '@eggjs/tegg-types';
2
+ import { GlobalModuleNode, GlobalModuleNodeOptions } from './GlobalModuleNode';
3
+ export declare class GlobalModuleNodeBuilder {
4
+ private readonly name;
5
+ private readonly unitPath;
6
+ private readonly optional;
7
+ private readonly protos;
8
+ constructor(options: GlobalModuleNodeOptions);
9
+ addClazz(clazz: EggProtoImplClass): this;
10
+ addMultiInstanceClazz(clazz: EggProtoImplClass, defineModuleName: string, defineUnitPath: string): this;
11
+ build(): GlobalModuleNode;
12
+ static create(unitPath: string, optional?: boolean): GlobalModuleNodeBuilder;
13
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GlobalModuleNodeBuilder = void 0;
4
+ const GlobalModuleNode_1 = require("./GlobalModuleNode");
5
+ const tegg_common_util_1 = require("@eggjs/tegg-common-util");
6
+ const ProtoDescriptorHelper_1 = require("../ProtoDescriptorHelper");
7
+ class GlobalModuleNodeBuilder {
8
+ constructor(options) {
9
+ this.name = options.name;
10
+ this.unitPath = options.unitPath;
11
+ this.optional = options.optional;
12
+ this.protos = [];
13
+ }
14
+ addClazz(clazz) {
15
+ const proto = ProtoDescriptorHelper_1.ProtoDescriptorHelper.createByInstanceClazz(clazz, {
16
+ moduleName: this.name,
17
+ unitPath: this.unitPath,
18
+ });
19
+ this.protos.push(proto);
20
+ return this;
21
+ }
22
+ addMultiInstanceClazz(clazz, defineModuleName, defineUnitPath) {
23
+ const protos = ProtoDescriptorHelper_1.ProtoDescriptorHelper.createByMultiInstanceClazz(clazz, {
24
+ defineModuleName,
25
+ defineUnitPath,
26
+ instanceModuleName: this.name,
27
+ instanceDefineUnitPath: this.unitPath,
28
+ });
29
+ this.protos.push(...protos);
30
+ return this;
31
+ }
32
+ build() {
33
+ const node = new GlobalModuleNode_1.GlobalModuleNode({
34
+ name: this.name,
35
+ unitPath: this.unitPath,
36
+ optional: this.optional,
37
+ });
38
+ for (const proto of this.protos) {
39
+ node.addProto(proto);
40
+ }
41
+ return node;
42
+ }
43
+ static create(unitPath, optional = false) {
44
+ const name = tegg_common_util_1.ModuleConfigUtil.readModuleNameSync(unitPath);
45
+ return new GlobalModuleNodeBuilder({
46
+ name,
47
+ unitPath,
48
+ optional,
49
+ });
50
+ }
51
+ }
52
+ exports.GlobalModuleNodeBuilder = GlobalModuleNodeBuilder;
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2xvYmFsTW9kdWxlTm9kZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWwvZ3JhcGgvR2xvYmFsTW9kdWxlTm9kZUJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EseURBQStFO0FBQy9FLDhEQUEyRDtBQUMzRCxvRUFBaUU7QUFFakUsTUFBYSx1QkFBdUI7SUFNbEMsWUFBWSxPQUFnQztRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQztRQUNqQyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQXdCO1FBQy9CLE1BQU0sS0FBSyxHQUFHLDZDQUFxQixDQUFDLHFCQUFxQixDQUFDLEtBQUssRUFBRTtZQUMvRCxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDckIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3hCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELHFCQUFxQixDQUFDLEtBQXdCLEVBQUUsZ0JBQXdCLEVBQUUsY0FBc0I7UUFDOUYsTUFBTSxNQUFNLEdBQUcsNkNBQXFCLENBQUMsMEJBQTBCLENBQUMsS0FBSyxFQUFFO1lBQ3JFLGdCQUFnQjtZQUNoQixjQUFjO1lBQ2Qsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDN0Isc0JBQXNCLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDdEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxLQUFLO1FBQ0gsTUFBTSxJQUFJLEdBQUcsSUFBSSxtQ0FBZ0IsQ0FBQztZQUNoQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3hCLENBQUMsQ0FBQztRQUNILEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBZ0IsRUFBRSxRQUFRLEdBQUcsS0FBSztRQUM5QyxNQUFNLElBQUksR0FBRyxtQ0FBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzRCxPQUFPLElBQUksdUJBQXVCLENBQUM7WUFDakMsSUFBSTtZQUNKLFFBQVE7WUFDUixRQUFRO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBckRELDBEQXFEQyJ9
@@ -0,0 +1,19 @@
1
+ import { GraphNodeObj, ProtoDescriptor } from '@eggjs/tegg-types';
2
+ import { ProtoSelectorContext } from './ProtoSelector';
3
+ import { EdgeMeta } from '@eggjs/tegg-common-util';
4
+ export declare class ProtoDependencyMeta implements EdgeMeta {
5
+ injectObj: PropertyKey;
6
+ constructor({ injectObj, }: {
7
+ injectObj: PropertyKey;
8
+ });
9
+ equal(meta: ProtoDependencyMeta): boolean;
10
+ toString(): string;
11
+ }
12
+ export declare class ProtoNode implements GraphNodeObj {
13
+ readonly id: string;
14
+ readonly proto: ProtoDescriptor;
15
+ constructor(proto: ProtoDescriptor);
16
+ toString(): string;
17
+ selectProto(ctx: ProtoSelectorContext): boolean;
18
+ static createProtoId(proto: ProtoDescriptor): string;
19
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProtoNode = exports.ProtoDependencyMeta = void 0;
4
+ const ProtoDescriptorHelper_1 = require("../ProtoDescriptorHelper");
5
+ class ProtoDependencyMeta {
6
+ constructor({ injectObj, }) {
7
+ this.injectObj = injectObj;
8
+ }
9
+ equal(meta) {
10
+ return this.injectObj === meta.injectObj;
11
+ }
12
+ toString() {
13
+ return `inject ${String(this.injectObj)}`;
14
+ }
15
+ }
16
+ exports.ProtoDependencyMeta = ProtoDependencyMeta;
17
+ class ProtoNode {
18
+ constructor(proto) {
19
+ this.id = ProtoNode.createProtoId(proto);
20
+ this.proto = proto;
21
+ }
22
+ toString() {
23
+ return `${String(this.proto.name)}@${this.proto.instanceDefineUnitPath}`;
24
+ }
25
+ selectProto(ctx) {
26
+ return ProtoDescriptorHelper_1.ProtoDescriptorHelper.selectProto(this.proto, ctx);
27
+ }
28
+ static createProtoId(proto) {
29
+ const id = [
30
+ proto.name,
31
+ proto.instanceModuleName,
32
+ proto.initType,
33
+ ...proto.qualifiers.map(t => String(t.attribute) + String(t.value)),
34
+ ];
35
+ return id.join('@');
36
+ }
37
+ }
38
+ exports.ProtoNode = ProtoNode;
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdG9Ob2RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vZGVsL2dyYXBoL1Byb3RvTm9kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSxvRUFBaUU7QUFFakUsTUFBYSxtQkFBbUI7SUFHOUIsWUFBWSxFQUNWLFNBQVMsR0FHVjtRQUNDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBeUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDM0MsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLFVBQVUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO0lBQzVDLENBQUM7Q0FDRjtBQWxCRCxrREFrQkM7QUFFRCxNQUFhLFNBQVM7SUFJcEIsWUFBWSxLQUFzQjtRQUNoQyxJQUFJLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQzNFLENBQUM7SUFFRCxXQUFXLENBQUMsR0FBeUI7UUFDbkMsT0FBTyw2Q0FBcUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFzQjtRQUN6QyxNQUFNLEVBQUUsR0FBRztZQUNULEtBQUssQ0FBQyxJQUFJO1lBQ1YsS0FBSyxDQUFDLGtCQUFrQjtZQUN4QixLQUFLLENBQUMsUUFBUTtZQUNkLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEUsQ0FBQztRQUNGLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QixDQUFDO0NBQ0Y7QUExQkQsOEJBMEJDIn0=
@@ -0,0 +1,6 @@
1
+ import { QualifierInfo } from '@eggjs/tegg-types';
2
+ export interface ProtoSelectorContext {
3
+ name: PropertyKey;
4
+ qualifiers: QualifierInfo[];
5
+ moduleName: string;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdG9TZWxlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2RlbC9ncmFwaC9Qcm90b1NlbGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eggjs/tegg-metadata",
3
- "version": "3.46.1",
3
+ "version": "3.46.2",
4
4
  "description": "tegg metadata",
5
5
  "keywords": [
6
6
  "egg",
@@ -35,10 +35,10 @@
35
35
  "node": ">=14.0.0"
36
36
  },
37
37
  "dependencies": {
38
- "@eggjs/core-decorator": "^3.46.1",
39
- "@eggjs/tegg-common-util": "^3.46.1",
40
- "@eggjs/tegg-lifecycle": "^3.46.1",
41
- "@eggjs/tegg-types": "^3.46.1",
38
+ "@eggjs/core-decorator": "^3.46.2",
39
+ "@eggjs/tegg-common-util": "^3.46.2",
40
+ "@eggjs/tegg-lifecycle": "^3.46.2",
41
+ "@eggjs/tegg-types": "^3.46.2",
42
42
  "egg-errors": "^2.2.3"
43
43
  },
44
44
  "devDependencies": {
@@ -54,5 +54,5 @@
54
54
  "publishConfig": {
55
55
  "access": "public"
56
56
  },
57
- "gitHead": "4333b21b086f8cece6481849a483d4122b5daf58"
57
+ "gitHead": "b6d33ddd36184e0d610e7df7f56cc326e9d3f17b"
58
58
  }