@eggjs/tegg-loader 3.57.13 → 3.57.15-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { EggLoadUnitTypeLike, Loader, ModuleReference } from '@eggjs/tegg-types';
1
+ import { EggLoadUnitTypeLike, EggProtoImplClass, Loader, ModuleReference } from '@eggjs/tegg-types';
2
2
  import { ModuleDescriptor } from '@eggjs/tegg-metadata';
3
3
  export type LoaderCreator = (unitPath: string) => Loader;
4
4
  export declare class LoaderFactory {
@@ -6,4 +6,5 @@ export declare class LoaderFactory {
6
6
  static createLoader(unitPath: string, type: EggLoadUnitTypeLike): Loader;
7
7
  static registerLoader(type: EggLoadUnitTypeLike, creator: LoaderCreator): void;
8
8
  static loadApp(moduleReferences: readonly ModuleReference[]): ModuleDescriptor[];
9
+ static loadModule(moduleReference: ModuleReference, multiInstanceClazzList?: EggProtoImplClass[]): ModuleDescriptor;
9
10
  }
@@ -18,29 +18,37 @@ class LoaderFactory {
18
18
  const result = [];
19
19
  const multiInstanceClazzList = [];
20
20
  for (const moduleReference of moduleReferences) {
21
- const loader = LoaderFactory.createLoader(moduleReference.path, moduleReference.loaderType || tegg_types_1.EggLoadUnitType.MODULE);
22
- const res = {
23
- name: moduleReference.name,
24
- unitPath: moduleReference.path,
25
- clazzList: [],
26
- protos: [],
27
- multiInstanceClazzList,
28
- optional: moduleReference.optional,
29
- };
30
- result.push(res);
31
- const clazzList = loader.load();
32
- for (const clazz of clazzList) {
33
- if (core_decorator_1.PrototypeUtil.isEggPrototype(clazz)) {
34
- res.clazzList.push(clazz);
35
- }
36
- else if (core_decorator_1.PrototypeUtil.isEggMultiInstancePrototype(clazz)) {
37
- res.multiInstanceClazzList.push(clazz);
38
- }
39
- }
21
+ const module = LoaderFactory.loadModule(moduleReference, multiInstanceClazzList);
22
+ result.push(module);
40
23
  }
41
24
  return result;
42
25
  }
26
+ static loadModule(moduleReference, multiInstanceClazzList) {
27
+ const loader = LoaderFactory.createLoader(moduleReference.path, moduleReference.loaderType || tegg_types_1.EggLoadUnitType.MODULE);
28
+ const res = {
29
+ name: moduleReference.name,
30
+ unitPath: moduleReference.path,
31
+ clazzList: [],
32
+ protos: [],
33
+ multiInstanceClazzList: multiInstanceClazzList || [],
34
+ innerObjectClazzList: [],
35
+ optional: moduleReference.optional,
36
+ };
37
+ const clazzList = loader.load();
38
+ for (const clazz of clazzList) {
39
+ if (core_decorator_1.PrototypeUtil.isEggInnerObject(clazz)) {
40
+ res.innerObjectClazzList.push(clazz);
41
+ }
42
+ else if (core_decorator_1.PrototypeUtil.isEggPrototype(clazz)) {
43
+ res.clazzList.push(clazz);
44
+ }
45
+ else if (core_decorator_1.PrototypeUtil.isEggMultiInstancePrototype(clazz)) {
46
+ res.multiInstanceClazzList.push(clazz);
47
+ }
48
+ }
49
+ return res;
50
+ }
43
51
  }
44
52
  exports.LoaderFactory = LoaderFactory;
45
53
  LoaderFactory.loaderCreatorMap = new Map();
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9hZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Mb2FkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGtEQUFxSDtBQUVySCwwREFBc0Q7QUFJdEQsTUFBYSxhQUFhO0lBR3hCLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBZ0IsRUFBRSxJQUF5QjtRQUM3RCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLElBQUksRUFBRSxDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQXlCLEVBQUUsT0FBc0I7UUFDckUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQUMsZ0JBQTRDO1FBQ3pELE1BQU0sTUFBTSxHQUF1QixFQUFFLENBQUM7UUFDdEMsTUFBTSxzQkFBc0IsR0FBd0IsRUFBRSxDQUFDO1FBQ3ZELEtBQUssTUFBTSxlQUFlLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUMvQyxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsZUFBZSxDQUFDLFVBQVUsSUFBSSw0QkFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3RILE1BQU0sR0FBRyxHQUFxQjtnQkFDNUIsSUFBSSxFQUFFLGVBQWUsQ0FBQyxJQUFJO2dCQUMxQixRQUFRLEVBQUUsZUFBZSxDQUFDLElBQUk7Z0JBQzlCLFNBQVMsRUFBRSxFQUFFO2dCQUNiLE1BQU0sRUFBRSxFQUFFO2dCQUNWLHNCQUFzQjtnQkFDdEIsUUFBUSxFQUFFLGVBQWUsQ0FBQyxRQUFRO2FBQ25DLENBQUM7WUFDRixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2pCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNoQyxLQUFLLE1BQU0sS0FBSyxJQUFJLFNBQVMsRUFBRSxDQUFDO2dCQUM5QixJQUFJLDhCQUFhLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ3hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM1QixDQUFDO3FCQUFNLElBQUksOEJBQWEsQ0FBQywyQkFBMkIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUM1RCxHQUFHLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN6QyxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOztBQXZDSCxzQ0F3Q0M7QUF2Q2dCLDhCQUFnQixHQUE0QyxJQUFJLEdBQUcsRUFBRSxDQUFDIn0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9hZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Mb2FkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGtEQUFxSDtBQUVySCwwREFBc0Q7QUFJdEQsTUFBYSxhQUFhO0lBR3hCLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBZ0IsRUFBRSxJQUF5QjtRQUM3RCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLElBQUksRUFBRSxDQUFDLENBQUM7UUFDOUQsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQXlCLEVBQUUsT0FBc0I7UUFDckUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQUMsZ0JBQTRDO1FBQ3pELE1BQU0sTUFBTSxHQUF1QixFQUFFLENBQUM7UUFDdEMsTUFBTSxzQkFBc0IsR0FBd0IsRUFBRSxDQUFDO1FBQ3ZELEtBQUssTUFBTSxlQUFlLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztZQUMvQyxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO1lBQ2pGLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLGVBQWdDLEVBQUUsc0JBQTRDO1FBQzlGLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxlQUFlLENBQUMsVUFBVSxJQUFJLDRCQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFdEgsTUFBTSxHQUFHLEdBQXFCO1lBQzVCLElBQUksRUFBRSxlQUFlLENBQUMsSUFBSTtZQUMxQixRQUFRLEVBQUUsZUFBZSxDQUFDLElBQUk7WUFDOUIsU0FBUyxFQUFFLEVBQUU7WUFDYixNQUFNLEVBQUUsRUFBRTtZQUNWLHNCQUFzQixFQUFFLHNCQUFzQixJQUFJLEVBQUU7WUFDcEQsb0JBQW9CLEVBQUUsRUFBRTtZQUN4QixRQUFRLEVBQUUsZUFBZSxDQUFDLFFBQVE7U0FDbkMsQ0FBQztRQUVGLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQyxLQUFLLE1BQU0sS0FBSyxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQzlCLElBQUksOEJBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUMxQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7aUJBQU0sSUFBSSw4QkFBYSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUMvQyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QixDQUFDO2lCQUFNLElBQUksOEJBQWEsQ0FBQywyQkFBMkIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUM1RCxHQUFHLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pDLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOztBQWxESCxzQ0FtREM7QUFsRGdCLDhCQUFnQixHQUE0QyxJQUFJLEdBQUcsRUFBRSxDQUFDIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eggjs/tegg-loader",
3
- "version": "3.57.13",
3
+ "version": "3.57.15-alpha.0",
4
4
  "description": "tegg default loader implement",
5
5
  "keywords": [
6
6
  "egg",
@@ -36,9 +36,9 @@
36
36
  "node": ">=14.0.0"
37
37
  },
38
38
  "dependencies": {
39
- "@eggjs/core-decorator": "^3.57.13",
40
- "@eggjs/tegg-common-util": "^3.57.13",
41
- "@eggjs/tegg-types": "^3.57.13",
39
+ "@eggjs/core-decorator": "^3.57.15-alpha.0",
40
+ "@eggjs/tegg-common-util": "^3.57.15-alpha.0",
41
+ "@eggjs/tegg-types": "^3.57.15-alpha.0",
42
42
  "globby": "^11.1.0",
43
43
  "is-type-of": "^1.2.1"
44
44
  },
@@ -46,7 +46,7 @@
46
46
  "access": "public"
47
47
  },
48
48
  "devDependencies": {
49
- "@eggjs/tegg-metadata": "^3.57.13",
49
+ "@eggjs/tegg-metadata": "^3.57.15-alpha.0",
50
50
  "@types/mocha": "^10.0.1",
51
51
  "@types/node": "^20.2.4",
52
52
  "cross-env": "^7.0.3",
@@ -54,5 +54,5 @@
54
54
  "ts-node": "^10.9.1",
55
55
  "typescript": "^5.0.4"
56
56
  },
57
- "gitHead": "b49e4c70e7f09a073e989493b995f8dd3ce482e9"
57
+ "gitHead": "083f28b66e5b5addfbc0a5c98367f3a35e46e6d0"
58
58
  }