@eggjs/metadata 4.0.0-beta.34 → 4.0.0-beta.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/errors.d.ts +14 -10
  2. package/dist/errors.js +29 -27
  3. package/dist/factory/EggPrototypeCreatorFactory.d.ts +13 -8
  4. package/dist/factory/EggPrototypeCreatorFactory.js +94 -111
  5. package/dist/factory/EggPrototypeFactory.d.ts +12 -8
  6. package/dist/factory/EggPrototypeFactory.js +40 -51
  7. package/dist/factory/LoadUnitFactory.d.ts +15 -11
  8. package/dist/factory/LoadUnitFactory.js +58 -59
  9. package/dist/factory/index.d.ts +3 -3
  10. package/dist/factory/index.js +5 -4
  11. package/dist/impl/EggPrototypeBuilder.d.ts +25 -21
  12. package/dist/impl/EggPrototypeBuilder.js +112 -127
  13. package/dist/impl/EggPrototypeImpl.d.ts +27 -23
  14. package/dist/impl/EggPrototypeImpl.js +52 -53
  15. package/dist/impl/LoadUnitMultiInstanceProtoHook.d.ts +10 -6
  16. package/dist/impl/LoadUnitMultiInstanceProtoHook.js +16 -18
  17. package/dist/impl/ModuleLoadUnit.d.ts +37 -33
  18. package/dist/impl/ModuleLoadUnit.js +208 -261
  19. package/dist/impl/index.d.ts +4 -4
  20. package/dist/impl/index.js +6 -5
  21. package/dist/index.d.ts +27 -6
  22. package/dist/index.js +28 -7
  23. package/dist/model/AppGraph.d.ts +38 -35
  24. package/dist/model/AppGraph.js +190 -253
  25. package/dist/model/EggPrototype.d.ts +7 -3
  26. package/dist/model/EggPrototype.js +7 -3
  27. package/dist/model/LoadUnit.d.ts +7 -3
  28. package/dist/model/LoadUnit.js +7 -3
  29. package/dist/model/ModuleDescriptor.d.ts +19 -15
  30. package/dist/model/ModuleDescriptor.js +32 -46
  31. package/dist/model/ProtoDescriptor/AbstractProtoDescriptor.d.ts +34 -30
  32. package/dist/model/ProtoDescriptor/AbstractProtoDescriptor.js +35 -31
  33. package/dist/model/ProtoDescriptor/ClassProtoDescriptor.d.ts +14 -10
  34. package/dist/model/ProtoDescriptor/ClassProtoDescriptor.js +26 -29
  35. package/dist/model/ProtoDescriptor/index.d.ts +2 -2
  36. package/dist/model/ProtoDescriptor/index.js +4 -3
  37. package/dist/model/ProtoDescriptorHelper.d.ts +30 -25
  38. package/dist/model/ProtoDescriptorHelper.js +113 -129
  39. package/dist/model/graph/GlobalGraph.d.ts +64 -60
  40. package/dist/model/graph/GlobalGraph.js +172 -236
  41. package/dist/model/graph/GlobalModuleNode.d.ts +26 -22
  42. package/dist/model/graph/GlobalModuleNode.js +42 -38
  43. package/dist/model/graph/GlobalModuleNodeBuilder.d.ts +16 -12
  44. package/dist/model/graph/GlobalModuleNodeBuilder.js +53 -52
  45. package/dist/model/graph/ProtoNode.d.ts +22 -16
  46. package/dist/model/graph/ProtoNode.js +42 -39
  47. package/dist/model/graph/ProtoSelector.d.ts +9 -5
  48. package/dist/model/graph/ProtoSelector.js +3 -2
  49. package/dist/model/graph/index.d.ts +5 -5
  50. package/dist/model/graph/index.js +7 -6
  51. package/dist/model/index.d.ts +14 -7
  52. package/dist/model/index.js +15 -8
  53. package/dist/util/ClassUtil.d.ts +8 -4
  54. package/dist/util/ClassUtil.js +18 -17
  55. package/dist/util/index.d.ts +1 -1
  56. package/dist/util/index.js +3 -2
  57. package/package.json +29 -33
@@ -1,264 +1,211 @@
1
- import assert from 'node:assert';
2
- import path from 'node:path';
3
- import { readFileSync } from 'node:fs';
4
- import { debuglog } from 'node:util';
5
- import { EggLoadUnitType, InitTypeQualifierAttribute, } from '@eggjs/tegg-types';
6
- import { Graph, GraphNode, MapUtil } from '@eggjs/tegg-common-util';
7
- import { IdenticalUtil, LifecycleUtil } from '@eggjs/lifecycle';
8
- import { FrameworkErrorFormatter } from '@eggjs/errors';
9
- import { PrototypeUtil, QualifierUtil } from '@eggjs/core-decorator';
10
- import { EggPrototypeFactory, LoadUnitFactory, EggPrototypeCreatorFactory } from "../factory/index.js";
11
- import { ClassProtoDescriptor, GlobalGraph } from "../model/index.js";
12
1
  import { MultiPrototypeFound } from "../errors.js";
13
- const debug = debuglog('tegg/core/metadata/impl/ModuleLoadUnit');
2
+ import { EggPrototypeFactory } from "../factory/EggPrototypeFactory.js";
3
+ import { ClassProtoDescriptor } from "../model/ProtoDescriptor/ClassProtoDescriptor.js";
4
+ import { GlobalGraph } from "../model/graph/GlobalGraph.js";
5
+ import "../model/index.js";
6
+ import { EggPrototypeCreatorFactory } from "../factory/EggPrototypeCreatorFactory.js";
7
+ import { LoadUnitFactory } from "../factory/LoadUnitFactory.js";
8
+ import "../factory/index.js";
9
+ import { FrameworkErrorFormatter } from "@eggjs/errors";
10
+ import { Graph, GraphNode, MapUtil } from "@eggjs/tegg-common-util";
11
+ import { EggLoadUnitType, InitTypeQualifierAttribute } from "@eggjs/tegg-types";
12
+ import assert from "node:assert";
13
+ import { debuglog } from "node:util";
14
+ import { PrototypeUtil, QualifierUtil } from "@eggjs/core-decorator";
15
+ import { IdenticalUtil, LifecycleUtil } from "@eggjs/lifecycle";
16
+ import path from "node:path";
17
+ import { readFileSync } from "node:fs";
18
+
19
+ //#region src/impl/ModuleLoadUnit.ts
20
+ const debug = debuglog("tegg/core/metadata/impl/ModuleLoadUnit");
14
21
  let id = 0;
15
- // TODO del ModuleGraph in next major version
16
- class ProtoNode {
17
- clazz;
18
- name;
19
- id;
20
- qualifiers;
21
- initType;
22
- PrototypeUtil;
23
- constructor(clazz, objName, initType, qualifiers) {
24
- this.name = objName;
25
- this.id = '' + id++;
26
- this.clazz = clazz;
27
- this.qualifiers = qualifiers;
28
- this.initType = initType;
29
- }
30
- verifyQualifiers(qualifiers) {
31
- for (const qualifier of qualifiers) {
32
- if (!this.verifyQualifier(qualifier)) {
33
- return false;
34
- }
35
- }
36
- return true;
37
- }
38
- verifyQualifier(qualifier) {
39
- const selfQualifiers = this.qualifiers.find((t) => t.attribute === qualifier.attribute);
40
- return selfQualifiers?.value === qualifier.value;
41
- }
42
- toString() {
43
- return `${this.clazz.name}@${this.PrototypeUtil.getFilePath(this.clazz)}`;
44
- }
45
- }
46
- export class ModuleGraph {
47
- graph;
48
- clazzList;
49
- unitPath;
50
- name;
51
- constructor(clazzList, unitPath, name) {
52
- this.clazzList = clazzList;
53
- this.graph = new Graph();
54
- this.unitPath = unitPath;
55
- this.name = name;
56
- debug('ModuleGraph constructor on moduleName: %o, unitPath: %o, clazzList size: %o', this.name, this.unitPath, this.clazzList.length);
57
- }
58
- findInjectNode(objName, qualifiers, parentInitTye) {
59
- let nodes = Array.from(this.graph.nodes.values())
60
- .filter((t) => t.val.name === objName)
61
- .filter((t) => t.val.verifyQualifiers(qualifiers));
62
- if (nodes.length === 0) {
63
- return undefined;
64
- }
65
- if (nodes.length === 1) {
66
- return nodes[0];
67
- }
68
- const initTypeQualifier = {
69
- attribute: InitTypeQualifierAttribute,
70
- value: parentInitTye,
71
- };
72
- nodes = nodes.filter((t) => t.val.verifyQualifiers([initTypeQualifier]));
73
- if (nodes.length === 1) {
74
- return nodes[0];
75
- }
76
- const temp = new Map();
77
- for (const node of nodes) {
78
- temp.set(node.val.clazz, node);
79
- }
80
- nodes = Array.from(temp.values());
81
- if (nodes.length === 1) {
82
- return nodes[0];
83
- }
84
- const result = nodes.map((node) => node.val.toString());
85
- throw FrameworkErrorFormatter.formatError(new MultiPrototypeFound(String(objName), qualifiers, JSON.stringify(result)));
86
- }
87
- async build() {
88
- const protoGraphNodes = [];
89
- for (const clazz of this.clazzList) {
90
- if (PrototypeUtil.isEggMultiInstancePrototype(clazz)) {
91
- const properties = await PrototypeUtil.getMultiInstanceProperty(clazz, {
92
- unitPath: this.unitPath,
93
- moduleName: this.name,
94
- });
95
- if (properties) {
96
- const qualifiers = QualifierUtil.getProtoQualifiers(clazz);
97
- for (const obj of properties.objects || []) {
98
- const instanceQualifiers = [...qualifiers, ...obj.qualifiers];
99
- protoGraphNodes.push(new GraphNode(new ProtoNode(clazz, obj.name, properties.initType, instanceQualifiers)));
100
- }
101
- }
102
- }
103
- else {
104
- const qualifiers = QualifierUtil.getProtoQualifiers(clazz);
105
- const property = PrototypeUtil.getProperty(clazz);
106
- if (property) {
107
- protoGraphNodes.push(new GraphNode(new ProtoNode(clazz, property.name, property.initType, qualifiers)));
108
- }
109
- }
110
- }
111
- for (const node of protoGraphNodes) {
112
- if (!this.graph.addVertex(node)) {
113
- throw new Error(`duplicate proto: ${node.val.id}`);
114
- }
115
- }
116
- for (const node of protoGraphNodes) {
117
- if (PrototypeUtil.isEggMultiInstancePrototype(node.val.clazz)) {
118
- const property = await PrototypeUtil.getMultiInstanceProperty(node.val.clazz, {
119
- moduleName: this.name,
120
- unitPath: this.unitPath,
121
- });
122
- for (const objectInfo of property?.objects || []) {
123
- const injectObjects = PrototypeUtil.getInjectObjects(node.val.clazz);
124
- for (const injectObject of injectObjects) {
125
- const qualifiers = [
126
- ...QualifierUtil.getProperQualifiers(node.val.clazz, injectObject.refName),
127
- ...(objectInfo.properQualifiers?.[injectObject.refName] ?? []),
128
- ];
129
- const injectNode = this.findInjectNode(injectObject.objName, qualifiers, node.val.initType);
130
- // If not found maybe in other module
131
- if (injectNode) {
132
- this.graph.addEdge(node, injectNode);
133
- }
134
- }
135
- }
136
- }
137
- else {
138
- const injectObjects = PrototypeUtil.getInjectObjects(node.val.clazz);
139
- for (const injectObject of injectObjects) {
140
- const qualifiers = QualifierUtil.getProperQualifiers(node.val.clazz, injectObject.refName);
141
- const injectNode = this.findInjectNode(injectObject.objName, qualifiers, node.val.initType);
142
- // If not found maybe in other module
143
- if (injectNode) {
144
- this.graph.addEdge(node, injectNode);
145
- }
146
- }
147
- }
148
- }
149
- }
150
- sort() {
151
- const loopPath = this.graph.loopPath();
152
- if (loopPath) {
153
- throw new Error('proto has recursive deps: ' + loopPath);
154
- }
155
- const clazzSet = new Set();
156
- for (const clazz of this.graph.sort()) {
157
- clazzSet.add(clazz.val.clazz);
158
- }
159
- this.clazzList = Array.from(clazzSet);
160
- }
161
- }
162
- export class ModuleLoadUnit {
163
- // private loader: Loader;
164
- protoMap = new Map();
165
- protos;
166
- clazzList;
167
- id;
168
- name;
169
- unitPath;
170
- type = EggLoadUnitType.MODULE;
171
- get globalGraph() {
172
- return GlobalGraph.instance;
173
- }
174
- constructor(name, unitPath) {
175
- this.id = IdenticalUtil.createLoadUnitId(name);
176
- this.name = name;
177
- this.unitPath = unitPath;
178
- debug('ModuleLoadUnit constructor on moduleName: %o, unitPath: %o, id: %o', this.name, this.unitPath, this.id);
179
- }
180
- doLoadClazz() {
181
- const protos = this.globalGraph.moduleProtoDescriptorMap.get(this.name);
182
- if (protos) {
183
- // TODO ModuleLoadUnit should support all proto descriptor
184
- this.protos = protos.filter((t) => ClassProtoDescriptor.isClassProtoDescriptor(t));
185
- this.clazzList = this.protos.map((t) => t.clazz);
186
- }
187
- else {
188
- this.protos = [];
189
- this.clazzList = [];
190
- }
191
- debug('doLoadClazz on moduleName: %o, protos size: %o, clazzList size: %o', this.name, this.protos.length, this.clazzList.length);
192
- }
193
- loadClazz() {
194
- if (!this.clazzList) {
195
- this.doLoadClazz();
196
- }
197
- }
198
- async preLoad() {
199
- this.loadClazz();
200
- for (const protoClass of this.clazzList) {
201
- // TODO refactor lifecycle hook to ProtoDescriptor or EggPrototype
202
- // ModuleLoadUnit should not use clazz list
203
- const fnName = LifecycleUtil.getStaticLifecycleHook('preLoad', protoClass);
204
- if (fnName) {
205
- const lifecycleHook = Reflect.get(protoClass, fnName);
206
- if (typeof lifecycleHook === 'function') {
207
- await lifecycleHook();
208
- }
209
- // TODO(@fengmk2): lifecycleHook is not a function should throw error
210
- }
211
- }
212
- }
213
- async init() {
214
- this.loadClazz();
215
- for (const protoDescriptor of this.protos) {
216
- const proto = await EggPrototypeCreatorFactory.createProtoByDescriptor(protoDescriptor, this);
217
- EggPrototypeFactory.instance.registerPrototype(proto, this);
218
- }
219
- }
220
- containPrototype(proto) {
221
- return !!this.protoMap.get(proto.name)?.find((t) => t === proto);
222
- }
223
- getEggPrototype(name, qualifiers) {
224
- const protos = this.protoMap.get(name);
225
- return protos?.filter((proto) => proto.verifyQualifiers(qualifiers)) || [];
226
- }
227
- registerEggPrototype(proto) {
228
- const protoList = MapUtil.getOrStore(this.protoMap, proto.name, []);
229
- protoList.push(proto);
230
- }
231
- deletePrototype(proto) {
232
- const protos = this.protoMap.get(proto.name);
233
- if (protos) {
234
- const index = protos.indexOf(proto);
235
- if (index !== -1) {
236
- protos.splice(index, 1);
237
- }
238
- }
239
- }
240
- async destroy() {
241
- for (const namedProtoMap of this.protoMap.values()) {
242
- for (const proto of namedProtoMap.slice()) {
243
- EggPrototypeFactory.instance.deletePrototype(proto, this);
244
- }
245
- }
246
- this.protoMap.clear();
247
- }
248
- iterateEggPrototype() {
249
- const protos = Array.from(this.protoMap.values()).reduce((p, c) => {
250
- p = p.concat(c);
251
- return p;
252
- }, []);
253
- return protos.values();
254
- }
255
- static createModule(ctx) {
256
- const pkgPath = path.join(ctx.unitPath, 'package.json');
257
- const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
258
- assert(pkg.eggModule, `module config not found in package ${pkgPath}`);
259
- const { name } = pkg.eggModule;
260
- return new ModuleLoadUnit(name, ctx.unitPath);
261
- }
262
- }
22
+ var ProtoNode = class {
23
+ clazz;
24
+ name;
25
+ id;
26
+ qualifiers;
27
+ initType;
28
+ PrototypeUtil;
29
+ constructor(clazz, objName, initType, qualifiers) {
30
+ this.name = objName;
31
+ this.id = "" + id++;
32
+ this.clazz = clazz;
33
+ this.qualifiers = qualifiers;
34
+ this.initType = initType;
35
+ }
36
+ verifyQualifiers(qualifiers) {
37
+ for (const qualifier of qualifiers) if (!this.verifyQualifier(qualifier)) return false;
38
+ return true;
39
+ }
40
+ verifyQualifier(qualifier) {
41
+ return this.qualifiers.find((t) => t.attribute === qualifier.attribute)?.value === qualifier.value;
42
+ }
43
+ toString() {
44
+ return `${this.clazz.name}@${this.PrototypeUtil.getFilePath(this.clazz)}`;
45
+ }
46
+ };
47
+ var ModuleGraph = class {
48
+ graph;
49
+ clazzList;
50
+ unitPath;
51
+ name;
52
+ constructor(clazzList, unitPath, name) {
53
+ this.clazzList = clazzList;
54
+ this.graph = new Graph();
55
+ this.unitPath = unitPath;
56
+ this.name = name;
57
+ debug("ModuleGraph constructor on moduleName: %o, unitPath: %o, clazzList size: %o", this.name, this.unitPath, this.clazzList.length);
58
+ }
59
+ findInjectNode(objName, qualifiers, parentInitTye) {
60
+ let nodes = Array.from(this.graph.nodes.values()).filter((t) => t.val.name === objName).filter((t) => t.val.verifyQualifiers(qualifiers));
61
+ if (nodes.length === 0) return;
62
+ if (nodes.length === 1) return nodes[0];
63
+ const initTypeQualifier = {
64
+ attribute: InitTypeQualifierAttribute,
65
+ value: parentInitTye
66
+ };
67
+ nodes = nodes.filter((t) => t.val.verifyQualifiers([initTypeQualifier]));
68
+ if (nodes.length === 1) return nodes[0];
69
+ const temp = /* @__PURE__ */ new Map();
70
+ for (const node of nodes) temp.set(node.val.clazz, node);
71
+ nodes = Array.from(temp.values());
72
+ if (nodes.length === 1) return nodes[0];
73
+ const result = nodes.map((node) => node.val.toString());
74
+ throw FrameworkErrorFormatter.formatError(new MultiPrototypeFound(String(objName), qualifiers, JSON.stringify(result)));
75
+ }
76
+ async build() {
77
+ const protoGraphNodes = [];
78
+ for (const clazz of this.clazzList) if (PrototypeUtil.isEggMultiInstancePrototype(clazz)) {
79
+ const properties = await PrototypeUtil.getMultiInstanceProperty(clazz, {
80
+ unitPath: this.unitPath,
81
+ moduleName: this.name
82
+ });
83
+ if (properties) {
84
+ const qualifiers = QualifierUtil.getProtoQualifiers(clazz);
85
+ for (const obj of properties.objects || []) {
86
+ const instanceQualifiers = [...qualifiers, ...obj.qualifiers];
87
+ protoGraphNodes.push(new GraphNode(new ProtoNode(clazz, obj.name, properties.initType, instanceQualifiers)));
88
+ }
89
+ }
90
+ } else {
91
+ const qualifiers = QualifierUtil.getProtoQualifiers(clazz);
92
+ const property = PrototypeUtil.getProperty(clazz);
93
+ if (property) protoGraphNodes.push(new GraphNode(new ProtoNode(clazz, property.name, property.initType, qualifiers)));
94
+ }
95
+ for (const node of protoGraphNodes) if (!this.graph.addVertex(node)) throw new Error(`duplicate proto: ${node.val.id}`);
96
+ for (const node of protoGraphNodes) if (PrototypeUtil.isEggMultiInstancePrototype(node.val.clazz)) {
97
+ const property = await PrototypeUtil.getMultiInstanceProperty(node.val.clazz, {
98
+ moduleName: this.name,
99
+ unitPath: this.unitPath
100
+ });
101
+ for (const objectInfo of property?.objects || []) {
102
+ const injectObjects = PrototypeUtil.getInjectObjects(node.val.clazz);
103
+ for (const injectObject of injectObjects) {
104
+ const qualifiers = [...QualifierUtil.getProperQualifiers(node.val.clazz, injectObject.refName), ...objectInfo.properQualifiers?.[injectObject.refName] ?? []];
105
+ const injectNode = this.findInjectNode(injectObject.objName, qualifiers, node.val.initType);
106
+ if (injectNode) this.graph.addEdge(node, injectNode);
107
+ }
108
+ }
109
+ } else {
110
+ const injectObjects = PrototypeUtil.getInjectObjects(node.val.clazz);
111
+ for (const injectObject of injectObjects) {
112
+ const qualifiers = QualifierUtil.getProperQualifiers(node.val.clazz, injectObject.refName);
113
+ const injectNode = this.findInjectNode(injectObject.objName, qualifiers, node.val.initType);
114
+ if (injectNode) this.graph.addEdge(node, injectNode);
115
+ }
116
+ }
117
+ }
118
+ sort() {
119
+ const loopPath = this.graph.loopPath();
120
+ if (loopPath) throw new Error("proto has recursive deps: " + loopPath);
121
+ const clazzSet = /* @__PURE__ */ new Set();
122
+ for (const clazz of this.graph.sort()) clazzSet.add(clazz.val.clazz);
123
+ this.clazzList = Array.from(clazzSet);
124
+ }
125
+ };
126
+ var ModuleLoadUnit = class ModuleLoadUnit {
127
+ protoMap = /* @__PURE__ */ new Map();
128
+ protos;
129
+ clazzList;
130
+ id;
131
+ name;
132
+ unitPath;
133
+ type = EggLoadUnitType.MODULE;
134
+ get globalGraph() {
135
+ return GlobalGraph.instance;
136
+ }
137
+ constructor(name, unitPath) {
138
+ this.id = IdenticalUtil.createLoadUnitId(name);
139
+ this.name = name;
140
+ this.unitPath = unitPath;
141
+ debug("ModuleLoadUnit constructor on moduleName: %o, unitPath: %o, id: %o", this.name, this.unitPath, this.id);
142
+ }
143
+ doLoadClazz() {
144
+ const protos = this.globalGraph.moduleProtoDescriptorMap.get(this.name);
145
+ if (protos) {
146
+ this.protos = protos.filter((t) => ClassProtoDescriptor.isClassProtoDescriptor(t));
147
+ this.clazzList = this.protos.map((t) => t.clazz);
148
+ } else {
149
+ this.protos = [];
150
+ this.clazzList = [];
151
+ }
152
+ debug("doLoadClazz on moduleName: %o, protos size: %o, clazzList size: %o", this.name, this.protos.length, this.clazzList.length);
153
+ }
154
+ loadClazz() {
155
+ if (!this.clazzList) this.doLoadClazz();
156
+ }
157
+ async preLoad() {
158
+ this.loadClazz();
159
+ for (const protoClass of this.clazzList) {
160
+ const fnName = LifecycleUtil.getStaticLifecycleHook("preLoad", protoClass);
161
+ if (fnName) {
162
+ const lifecycleHook = Reflect.get(protoClass, fnName);
163
+ if (typeof lifecycleHook === "function") await lifecycleHook();
164
+ }
165
+ }
166
+ }
167
+ async init() {
168
+ this.loadClazz();
169
+ for (const protoDescriptor of this.protos) {
170
+ const proto = await EggPrototypeCreatorFactory.createProtoByDescriptor(protoDescriptor, this);
171
+ EggPrototypeFactory.instance.registerPrototype(proto, this);
172
+ }
173
+ }
174
+ containPrototype(proto) {
175
+ return !!this.protoMap.get(proto.name)?.find((t) => t === proto);
176
+ }
177
+ getEggPrototype(name, qualifiers) {
178
+ return this.protoMap.get(name)?.filter((proto) => proto.verifyQualifiers(qualifiers)) || [];
179
+ }
180
+ registerEggPrototype(proto) {
181
+ MapUtil.getOrStore(this.protoMap, proto.name, []).push(proto);
182
+ }
183
+ deletePrototype(proto) {
184
+ const protos = this.protoMap.get(proto.name);
185
+ if (protos) {
186
+ const index = protos.indexOf(proto);
187
+ if (index !== -1) protos.splice(index, 1);
188
+ }
189
+ }
190
+ async destroy() {
191
+ for (const namedProtoMap of this.protoMap.values()) for (const proto of namedProtoMap.slice()) EggPrototypeFactory.instance.deletePrototype(proto, this);
192
+ this.protoMap.clear();
193
+ }
194
+ iterateEggPrototype() {
195
+ return Array.from(this.protoMap.values()).reduce((p, c) => {
196
+ p = p.concat(c);
197
+ return p;
198
+ }, []).values();
199
+ }
200
+ static createModule(ctx) {
201
+ const pkgPath = path.join(ctx.unitPath, "package.json");
202
+ const pkg = JSON.parse(readFileSync(pkgPath, "utf-8"));
203
+ assert(pkg.eggModule, `module config not found in package ${pkgPath}`);
204
+ const { name } = pkg.eggModule;
205
+ return new ModuleLoadUnit(name, ctx.unitPath);
206
+ }
207
+ };
263
208
  LoadUnitFactory.registerLoadUnitCreator(EggLoadUnitType.MODULE, ModuleLoadUnit.createModule);
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlTG9hZFVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW1wbC9Nb2R1bGVMb2FkVW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyQyxPQUFPLEVBQ0wsZUFBZSxFQUVmLDBCQUEwQixHQUUzQixNQUFNLG1CQUFtQixDQUFDO0FBUzNCLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFbkQsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7QUFFakUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBRVgsNkNBQTZDO0FBQzdDLE1BQU0sU0FBUztJQUNKLEtBQUssQ0FBb0I7SUFDekIsSUFBSSxDQUFtQjtJQUN2QixFQUFFLENBQVM7SUFDWCxVQUFVLENBQWtCO0lBQzVCLFFBQVEsQ0FBcUI7SUFDOUIsYUFB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
209
+
210
+ //#endregion
211
+ export { ModuleGraph, ModuleLoadUnit };
@@ -1,4 +1,4 @@
1
- export * from './EggPrototypeBuilder.ts';
2
- export * from './EggPrototypeImpl.ts';
3
- export * from './LoadUnitMultiInstanceProtoHook.ts';
4
- export * from './ModuleLoadUnit.ts';
1
+ import { EggPrototypeBuilder } from "./EggPrototypeBuilder.js";
2
+ import { EggPrototypeImpl } from "./EggPrototypeImpl.js";
3
+ import { LoadUnitMultiInstanceProtoHook } from "./LoadUnitMultiInstanceProtoHook.js";
4
+ import { ModuleGraph, ModuleLoadUnit } from "./ModuleLoadUnit.js";
@@ -1,5 +1,6 @@
1
- export * from "./EggPrototypeBuilder.js";
2
- export * from "./EggPrototypeImpl.js";
3
- export * from "./LoadUnitMultiInstanceProtoHook.js";
4
- export * from "./ModuleLoadUnit.js";
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW1wbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHFCQUFxQixDQUFDIn0=
1
+ import { EggPrototypeImpl } from "./EggPrototypeImpl.js";
2
+ import { EggPrototypeBuilder } from "./EggPrototypeBuilder.js";
3
+ import { LoadUnitMultiInstanceProtoHook } from "./LoadUnitMultiInstanceProtoHook.js";
4
+ import { ModuleGraph, ModuleLoadUnit } from "./ModuleLoadUnit.js";
5
+
6
+ export { };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,27 @@
1
- export * from '@eggjs/tegg-types/metadata';
2
- export * from './factory/index.ts';
3
- export * from './model/index.ts';
4
- export * from './errors.ts';
5
- export * from './util/index.ts';
6
- export * from './impl/index.ts';
1
+ import { EggPrototypeFactory } from "./factory/EggPrototypeFactory.js";
2
+ import { ModuleDescriptor, ModuleDescriptorDumper, ModuleDumpOptions } from "./model/ModuleDescriptor.js";
3
+ import { ProtoSelectorContext } from "./model/graph/ProtoSelector.js";
4
+ import { ProtoDependencyMeta, ProtoNode } from "./model/graph/ProtoNode.js";
5
+ import { GlobalModuleNode, GlobalModuleNodeOptions, ModuleDependencyMeta } from "./model/graph/GlobalModuleNode.js";
6
+ import { GlobalGraph, GlobalGraphBuildHook, GlobalGraphOptions } from "./model/graph/GlobalGraph.js";
7
+ import { GlobalModuleNodeBuilder } from "./model/graph/GlobalModuleNodeBuilder.js";
8
+ import { AbstractProtoDescriptor, AbstractProtoDescriptorOptions } from "./model/ProtoDescriptor/AbstractProtoDescriptor.js";
9
+ import { ClassProtoDescriptor, ClassProtoDescriptorOptions } from "./model/ProtoDescriptor/ClassProtoDescriptor.js";
10
+ import { AppGraph, ClazzMap, ClazzMetaMap, InstanceClazzMeta, ModuleNode } from "./model/AppGraph.js";
11
+ import { EggPrototypeLifecycleUtil } from "./model/EggPrototype.js";
12
+ import { LoadUnitLifecycleUtil } from "./model/LoadUnit.js";
13
+ import { ProtoDescriptorHelper } from "./model/ProtoDescriptorHelper.js";
14
+ import "./model/index.js";
15
+ import { EggPrototypeCreatorFactory } from "./factory/EggPrototypeCreatorFactory.js";
16
+ import { LoadUnitFactory } from "./factory/LoadUnitFactory.js";
17
+ import "./factory/index.js";
18
+ import { EggPrototypeNotFound, IncompatibleProtoInject, MultiPrototypeFound, TeggError } from "./errors.js";
19
+ import { ClassUtil } from "./util/ClassUtil.js";
20
+ import "./util/index.js";
21
+ import { EggPrototypeBuilder } from "./impl/EggPrototypeBuilder.js";
22
+ import { EggPrototypeImpl } from "./impl/EggPrototypeImpl.js";
23
+ import { LoadUnitMultiInstanceProtoHook } from "./impl/LoadUnitMultiInstanceProtoHook.js";
24
+ import { ModuleGraph, ModuleLoadUnit } from "./impl/ModuleLoadUnit.js";
25
+ import "./impl/index.js";
26
+ export * from "@eggjs/tegg-types/metadata";
27
+ export { AbstractProtoDescriptor, AbstractProtoDescriptorOptions, AppGraph, ClassProtoDescriptor, ClassProtoDescriptorOptions, ClassUtil, ClazzMap, ClazzMetaMap, EggPrototypeBuilder, EggPrototypeCreatorFactory, EggPrototypeFactory, EggPrototypeImpl, EggPrototypeLifecycleUtil, EggPrototypeNotFound, GlobalGraph, GlobalGraphBuildHook, GlobalGraphOptions, GlobalModuleNode, GlobalModuleNodeBuilder, GlobalModuleNodeOptions, IncompatibleProtoInject, InstanceClazzMeta, LoadUnitFactory, LoadUnitLifecycleUtil, LoadUnitMultiInstanceProtoHook, ModuleDependencyMeta, ModuleDescriptor, ModuleDescriptorDumper, ModuleDumpOptions, ModuleGraph, ModuleLoadUnit, ModuleNode, MultiPrototypeFound, ProtoDependencyMeta, ProtoDescriptorHelper, ProtoNode, ProtoSelectorContext, TeggError };
package/dist/index.js CHANGED
@@ -1,7 +1,28 @@
1
- export * from '@eggjs/tegg-types/metadata';
2
- export * from "./factory/index.js";
3
- export * from "./model/index.js";
4
- export * from "./errors.js";
5
- export * from "./util/index.js";
6
- export * from "./impl/index.js";
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDIn0=
1
+ import { EggPrototypeNotFound, IncompatibleProtoInject, MultiPrototypeFound, TeggError } from "./errors.js";
2
+ import { EggPrototypeFactory } from "./factory/EggPrototypeFactory.js";
3
+ import { AbstractProtoDescriptor } from "./model/ProtoDescriptor/AbstractProtoDescriptor.js";
4
+ import { ClassProtoDescriptor } from "./model/ProtoDescriptor/ClassProtoDescriptor.js";
5
+ import { ProtoDescriptorHelper } from "./model/ProtoDescriptorHelper.js";
6
+ import { ProtoDependencyMeta, ProtoNode } from "./model/graph/ProtoNode.js";
7
+ import { GlobalModuleNode, ModuleDependencyMeta } from "./model/graph/GlobalModuleNode.js";
8
+ import { GlobalModuleNodeBuilder } from "./model/graph/GlobalModuleNodeBuilder.js";
9
+ import { GlobalGraph } from "./model/graph/GlobalGraph.js";
10
+ import { AppGraph, ClazzMap, ModuleNode } from "./model/AppGraph.js";
11
+ import { EggPrototypeLifecycleUtil } from "./model/EggPrototype.js";
12
+ import { LoadUnitLifecycleUtil } from "./model/LoadUnit.js";
13
+ import { ModuleDescriptorDumper } from "./model/ModuleDescriptor.js";
14
+ import "./model/index.js";
15
+ import { EggPrototypeCreatorFactory } from "./factory/EggPrototypeCreatorFactory.js";
16
+ import { LoadUnitFactory } from "./factory/LoadUnitFactory.js";
17
+ import "./factory/index.js";
18
+ import { ClassUtil } from "./util/ClassUtil.js";
19
+ import "./util/index.js";
20
+ import { EggPrototypeImpl } from "./impl/EggPrototypeImpl.js";
21
+ import { EggPrototypeBuilder } from "./impl/EggPrototypeBuilder.js";
22
+ import { LoadUnitMultiInstanceProtoHook } from "./impl/LoadUnitMultiInstanceProtoHook.js";
23
+ import { ModuleGraph, ModuleLoadUnit } from "./impl/ModuleLoadUnit.js";
24
+ import "./impl/index.js";
25
+
26
+ export * from "@eggjs/tegg-types/metadata"
27
+
28
+ export { AbstractProtoDescriptor, AppGraph, ClassProtoDescriptor, ClassUtil, ClazzMap, EggPrototypeBuilder, EggPrototypeCreatorFactory, EggPrototypeFactory, EggPrototypeImpl, EggPrototypeLifecycleUtil, EggPrototypeNotFound, GlobalGraph, GlobalModuleNode, GlobalModuleNodeBuilder, IncompatibleProtoInject, LoadUnitFactory, LoadUnitLifecycleUtil, LoadUnitMultiInstanceProtoHook, ModuleDependencyMeta, ModuleDescriptorDumper, ModuleGraph, ModuleLoadUnit, ModuleNode, MultiPrototypeFound, ProtoDependencyMeta, ProtoDescriptorHelper, ProtoNode, TeggError };