@eggjs/tegg-metadata 4.0.0-beta.7 → 4.0.0-beta.9

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 +10 -14
  2. package/dist/errors.js +27 -29
  3. package/dist/factory/EggPrototypeCreatorFactory.d.ts +8 -12
  4. package/dist/factory/EggPrototypeCreatorFactory.js +108 -95
  5. package/dist/factory/EggPrototypeFactory.d.ts +8 -12
  6. package/dist/factory/EggPrototypeFactory.js +51 -40
  7. package/dist/factory/LoadUnitFactory.d.ts +11 -15
  8. package/dist/factory/LoadUnitFactory.js +59 -58
  9. package/dist/factory/index.d.ts +3 -0
  10. package/dist/factory/index.js +4 -5
  11. package/dist/impl/EggPrototypeBuilder.d.ts +21 -25
  12. package/dist/impl/EggPrototypeBuilder.js +122 -113
  13. package/dist/impl/EggPrototypeImpl.d.ts +23 -27
  14. package/dist/impl/EggPrototypeImpl.js +53 -52
  15. package/dist/impl/LoadUnitMultiInstanceProtoHook.d.ts +6 -10
  16. package/dist/impl/LoadUnitMultiInstanceProtoHook.js +18 -16
  17. package/dist/impl/ModuleLoadUnit.d.ts +33 -36
  18. package/dist/impl/ModuleLoadUnit.js +265 -208
  19. package/dist/impl/index.d.ts +4 -0
  20. package/dist/impl/index.js +5 -6
  21. package/dist/index.d.ts +6 -23
  22. package/dist/index.js +7 -28
  23. package/dist/model/AppGraph.d.ts +35 -38
  24. package/dist/model/AppGraph.js +260 -191
  25. package/dist/model/EggPrototype.d.ts +3 -7
  26. package/dist/model/EggPrototype.js +3 -7
  27. package/dist/model/LoadUnit.d.ts +3 -7
  28. package/dist/model/LoadUnit.js +3 -7
  29. package/dist/model/ModuleDescriptor.d.ts +15 -19
  30. package/dist/model/ModuleDescriptor.js +38 -32
  31. package/dist/model/ProtoDescriptor/AbstractProtoDescriptor.d.ts +30 -34
  32. package/dist/model/ProtoDescriptor/AbstractProtoDescriptor.js +31 -35
  33. package/dist/model/ProtoDescriptor/ClassProtoDescriptor.d.ts +10 -14
  34. package/dist/model/ProtoDescriptor/ClassProtoDescriptor.js +29 -26
  35. package/dist/model/ProtoDescriptor/index.d.ts +2 -0
  36. package/dist/model/ProtoDescriptor/index.js +3 -4
  37. package/dist/model/ProtoDescriptorHelper.d.ts +25 -29
  38. package/dist/model/ProtoDescriptorHelper.js +130 -113
  39. package/dist/model/graph/GlobalGraph.d.ts +48 -52
  40. package/dist/model/graph/GlobalGraph.js +229 -172
  41. package/dist/model/graph/GlobalModuleNode.d.ts +22 -26
  42. package/dist/model/graph/GlobalModuleNode.js +39 -42
  43. package/dist/model/graph/GlobalModuleNodeBuilder.d.ts +12 -16
  44. package/dist/model/graph/GlobalModuleNodeBuilder.js +52 -54
  45. package/dist/model/graph/ProtoNode.d.ts +16 -22
  46. package/dist/model/graph/ProtoNode.js +39 -42
  47. package/dist/model/graph/ProtoSelector.d.ts +5 -9
  48. package/dist/model/graph/ProtoSelector.js +2 -3
  49. package/dist/model/graph/index.d.ts +5 -0
  50. package/dist/model/graph/index.js +6 -7
  51. package/dist/model/index.d.ts +7 -0
  52. package/dist/model/index.js +8 -15
  53. package/dist/util/ClassUtil.d.ts +4 -8
  54. package/dist/util/ClassUtil.js +17 -18
  55. package/dist/util/index.d.ts +1 -0
  56. package/dist/util/index.js +2 -3
  57. package/package.json +6 -6
@@ -1,211 +1,268 @@
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/tegg-lifecycle';
8
+ import { FrameworkErrorFormater } from 'egg-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";
1
12
  import { MultiPrototypeFound } from "../errors.js";
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 { Graph, GraphNode, MapUtil } from "@eggjs/tegg-common-util";
10
- import { EggLoadUnitType, InitTypeQualifierAttribute } from "@eggjs/tegg-types";
11
- import { FrameworkErrorFormater } from "egg-errors";
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/tegg-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");
13
+ const debug = debuglog('tegg/core/metadata/impl/ModuleLoadUnit');
21
14
  let id = 0;
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 FrameworkErrorFormater.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
- };
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 FrameworkErrorFormater.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 = [
99
+ ...qualifiers,
100
+ ...obj.qualifiers,
101
+ ];
102
+ protoGraphNodes.push(new GraphNode(new ProtoNode(clazz, obj.name, properties.initType, instanceQualifiers)));
103
+ }
104
+ }
105
+ }
106
+ else {
107
+ const qualifiers = QualifierUtil.getProtoQualifiers(clazz);
108
+ const property = PrototypeUtil.getProperty(clazz);
109
+ if (property) {
110
+ protoGraphNodes.push(new GraphNode(new ProtoNode(clazz, property.name, property.initType, qualifiers)));
111
+ }
112
+ }
113
+ }
114
+ for (const node of protoGraphNodes) {
115
+ if (!this.graph.addVertex(node)) {
116
+ throw new Error(`duplicate proto: ${node.val.id}`);
117
+ }
118
+ }
119
+ for (const node of protoGraphNodes) {
120
+ if (PrototypeUtil.isEggMultiInstancePrototype(node.val.clazz)) {
121
+ const property = await PrototypeUtil.getMultiInstanceProperty(node.val.clazz, {
122
+ moduleName: this.name,
123
+ unitPath: this.unitPath,
124
+ });
125
+ for (const objectInfo of property?.objects || []) {
126
+ const injectObjects = PrototypeUtil.getInjectObjects(node.val.clazz);
127
+ for (const injectObject of injectObjects) {
128
+ const qualifiers = [
129
+ ...QualifierUtil.getProperQualifiers(node.val.clazz, injectObject.refName),
130
+ ...objectInfo.properQualifiers?.[injectObject.refName] ?? [],
131
+ ];
132
+ const injectNode = this.findInjectNode(injectObject.objName, qualifiers, node.val.initType);
133
+ // If not found maybe in other module
134
+ if (injectNode) {
135
+ this.graph.addEdge(node, injectNode);
136
+ }
137
+ }
138
+ }
139
+ }
140
+ else {
141
+ const injectObjects = PrototypeUtil.getInjectObjects(node.val.clazz);
142
+ for (const injectObject of injectObjects) {
143
+ const qualifiers = QualifierUtil.getProperQualifiers(node.val.clazz, injectObject.refName);
144
+ const injectNode = this.findInjectNode(injectObject.objName, qualifiers, node.val.initType);
145
+ // If not found maybe in other module
146
+ if (injectNode) {
147
+ this.graph.addEdge(node, injectNode);
148
+ }
149
+ }
150
+ }
151
+ }
152
+ }
153
+ sort() {
154
+ const loopPath = this.graph.loopPath();
155
+ if (loopPath) {
156
+ throw new Error('proto has recursive deps: ' + loopPath);
157
+ }
158
+ const clazzSet = new Set();
159
+ for (const clazz of this.graph.sort()) {
160
+ clazzSet.add(clazz.val.clazz);
161
+ }
162
+ this.clazzList = Array.from(clazzSet);
163
+ }
164
+ }
165
+ export class ModuleLoadUnit {
166
+ // private loader: Loader;
167
+ protoMap = new Map();
168
+ protos;
169
+ clazzList;
170
+ id;
171
+ name;
172
+ unitPath;
173
+ type = EggLoadUnitType.MODULE;
174
+ get globalGraph() {
175
+ return GlobalGraph.instance;
176
+ }
177
+ constructor(name, unitPath) {
178
+ this.id = IdenticalUtil.createLoadUnitId(name);
179
+ this.name = name;
180
+ this.unitPath = unitPath;
181
+ debug('ModuleLoadUnit constructor on moduleName: %o, unitPath: %o, id: %o', this.name, this.unitPath, this.id);
182
+ }
183
+ doLoadClazz() {
184
+ const protos = this.globalGraph.moduleProtoDescriptorMap.get(this.name);
185
+ if (protos) {
186
+ // TODO ModuleLoadUnit should support all proto descriptor
187
+ this.protos = protos.filter(t => ClassProtoDescriptor.isClassProtoDescriptor(t));
188
+ this.clazzList = this.protos.map(t => t.clazz);
189
+ }
190
+ else {
191
+ this.protos = [];
192
+ this.clazzList = [];
193
+ }
194
+ debug('doLoadClazz on moduleName: %o, protos size: %o, clazzList size: %o', this.name, this.protos.length, this.clazzList.length);
195
+ }
196
+ loadClazz() {
197
+ if (!this.clazzList) {
198
+ this.doLoadClazz();
199
+ }
200
+ }
201
+ async preLoad() {
202
+ this.loadClazz();
203
+ for (const protoClass of this.clazzList) {
204
+ // TODO refactor lifecycle hook to ProtoDescriptor or EggPrototype
205
+ // ModuleLoadUnit should not use clazz list
206
+ const fnName = LifecycleUtil.getStaticLifecycleHook('preLoad', protoClass);
207
+ if (fnName) {
208
+ const lifecycleHook = Reflect.get(protoClass, fnName);
209
+ if (typeof lifecycleHook === 'function') {
210
+ await lifecycleHook();
211
+ }
212
+ // TODO(@fengmk2): lifecycleHook is not a function should throw error
213
+ }
214
+ }
215
+ }
216
+ async init() {
217
+ this.loadClazz();
218
+ for (const protoDescriptor of this.protos) {
219
+ const proto = await EggPrototypeCreatorFactory.createProtoByDescriptor(protoDescriptor, this);
220
+ EggPrototypeFactory.instance.registerPrototype(proto, this);
221
+ }
222
+ }
223
+ containPrototype(proto) {
224
+ return !!(this.protoMap.get(proto.name)?.find(t => t === proto));
225
+ }
226
+ getEggPrototype(name, qualifiers) {
227
+ const protos = this.protoMap.get(name);
228
+ return protos?.filter(proto => proto.verifyQualifiers(qualifiers)) || [];
229
+ }
230
+ registerEggPrototype(proto) {
231
+ const protoList = MapUtil.getOrStore(this.protoMap, proto.name, []);
232
+ protoList.push(proto);
233
+ }
234
+ deletePrototype(proto) {
235
+ const protos = this.protoMap.get(proto.name);
236
+ if (protos) {
237
+ const index = protos.indexOf(proto);
238
+ if (index !== -1) {
239
+ protos.splice(index, 1);
240
+ }
241
+ }
242
+ }
243
+ async destroy() {
244
+ for (const namedProtoMap of this.protoMap.values()) {
245
+ for (const proto of namedProtoMap.slice()) {
246
+ EggPrototypeFactory.instance.deletePrototype(proto, this);
247
+ }
248
+ }
249
+ this.protoMap.clear();
250
+ }
251
+ iterateEggPrototype() {
252
+ const protos = Array.from(this.protoMap.values())
253
+ .reduce((p, c) => {
254
+ p = p.concat(c);
255
+ return p;
256
+ }, []);
257
+ return protos.values();
258
+ }
259
+ static createModule(ctx) {
260
+ const pkgPath = path.join(ctx.unitPath, 'package.json');
261
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
262
+ assert(pkg.eggModule, `module config not found in package ${pkgPath}`);
263
+ const { name } = pkg.eggModule;
264
+ return new ModuleLoadUnit(name, ctx.unitPath);
265
+ }
266
+ }
208
267
  LoadUnitFactory.registerLoadUnitCreator(EggLoadUnitType.MODULE, ModuleLoadUnit.createModule);
209
-
210
- //#endregion
211
- export { ModuleGraph, ModuleLoadUnit };
268
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlTG9hZFVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW1wbC9Nb2R1bGVMb2FkVW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVyQyxPQUFPLEVBQ0wsZUFBZSxFQUVmLDBCQUEwQixHQUUzQixNQUFNLG1CQUFtQixDQUFDO0FBUzNCLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFbkQsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7QUFFakUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBRVgsNkNBQTZDO0FBQzdDLE1BQU0sU0FBUztJQUNKLEtBQUssQ0FBb0I7SUFDekIsSUFBSSxDQUFtQjtJQUN2QixFQUFFLENBQVM7SUFDWCxVQUFVLENBQWtCO0lBQzVCLFFBQVEsQ0FBcUI7SUFDOUIsYUFB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
@@ -0,0 +1,4 @@
1
+ export * from './EggPrototypeBuilder.ts';
2
+ export * from './EggPrototypeImpl.ts';
3
+ export * from './LoadUnitMultiInstanceProtoHook.ts';
4
+ export * from './ModuleLoadUnit.ts';
@@ -1,6 +1,5 @@
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 { };
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=
package/dist/index.d.ts CHANGED
@@ -1,23 +1,6 @@
1
- import { EggPrototypeFactory } from "./factory/EggPrototypeFactory.js";
2
- import { ProtoSelectorContext } from "./model/graph/ProtoSelector.js";
3
- import { ProtoDependencyMeta, ProtoNode } from "./model/graph/ProtoNode.js";
4
- import { GlobalModuleNode, GlobalModuleNodeOptions, ModuleDependencyMeta } from "./model/graph/GlobalModuleNode.js";
5
- import { ModuleDescriptor, ModuleDescriptorDumper, ModuleDumpOptions } from "./model/ModuleDescriptor.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 { EggPrototypeCreatorFactory } from "./factory/EggPrototypeCreatorFactory.js";
15
- import { LoadUnitFactory } from "./factory/LoadUnitFactory.js";
16
- import { EggPrototypeNotFound, IncompatibleProtoInject, MultiPrototypeFound, TeggError } from "./errors.js";
17
- import { ClassUtil } from "./util/ClassUtil.js";
18
- import { EggPrototypeBuilder } from "./impl/EggPrototypeBuilder.js";
19
- import { EggPrototypeImpl } from "./impl/EggPrototypeImpl.js";
20
- import { LoadUnitMultiInstanceProtoHook } from "./impl/LoadUnitMultiInstanceProtoHook.js";
21
- import { ModuleGraph, ModuleLoadUnit } from "./impl/ModuleLoadUnit.js";
22
- export * from "@eggjs/tegg-types/metadata";
23
- 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 };
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';
package/dist/index.js CHANGED
@@ -1,28 +1,7 @@
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 };
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=