@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.
- package/dist/errors.d.ts +10 -14
- package/dist/errors.js +27 -29
- package/dist/factory/EggPrototypeCreatorFactory.d.ts +8 -12
- package/dist/factory/EggPrototypeCreatorFactory.js +108 -95
- package/dist/factory/EggPrototypeFactory.d.ts +8 -12
- package/dist/factory/EggPrototypeFactory.js +51 -40
- package/dist/factory/LoadUnitFactory.d.ts +11 -15
- package/dist/factory/LoadUnitFactory.js +59 -58
- package/dist/factory/index.d.ts +3 -0
- package/dist/factory/index.js +4 -5
- package/dist/impl/EggPrototypeBuilder.d.ts +21 -25
- package/dist/impl/EggPrototypeBuilder.js +122 -113
- package/dist/impl/EggPrototypeImpl.d.ts +23 -27
- package/dist/impl/EggPrototypeImpl.js +53 -52
- package/dist/impl/LoadUnitMultiInstanceProtoHook.d.ts +6 -10
- package/dist/impl/LoadUnitMultiInstanceProtoHook.js +18 -16
- package/dist/impl/ModuleLoadUnit.d.ts +33 -36
- package/dist/impl/ModuleLoadUnit.js +265 -208
- package/dist/impl/index.d.ts +4 -0
- package/dist/impl/index.js +5 -6
- package/dist/index.d.ts +6 -23
- package/dist/index.js +7 -28
- package/dist/model/AppGraph.d.ts +35 -38
- package/dist/model/AppGraph.js +260 -191
- package/dist/model/EggPrototype.d.ts +3 -7
- package/dist/model/EggPrototype.js +3 -7
- package/dist/model/LoadUnit.d.ts +3 -7
- package/dist/model/LoadUnit.js +3 -7
- package/dist/model/ModuleDescriptor.d.ts +15 -19
- package/dist/model/ModuleDescriptor.js +38 -32
- package/dist/model/ProtoDescriptor/AbstractProtoDescriptor.d.ts +30 -34
- package/dist/model/ProtoDescriptor/AbstractProtoDescriptor.js +31 -35
- package/dist/model/ProtoDescriptor/ClassProtoDescriptor.d.ts +10 -14
- package/dist/model/ProtoDescriptor/ClassProtoDescriptor.js +29 -26
- package/dist/model/ProtoDescriptor/index.d.ts +2 -0
- package/dist/model/ProtoDescriptor/index.js +3 -4
- package/dist/model/ProtoDescriptorHelper.d.ts +25 -29
- package/dist/model/ProtoDescriptorHelper.js +130 -113
- package/dist/model/graph/GlobalGraph.d.ts +48 -52
- package/dist/model/graph/GlobalGraph.js +229 -172
- package/dist/model/graph/GlobalModuleNode.d.ts +22 -26
- package/dist/model/graph/GlobalModuleNode.js +39 -42
- package/dist/model/graph/GlobalModuleNodeBuilder.d.ts +12 -16
- package/dist/model/graph/GlobalModuleNodeBuilder.js +52 -54
- package/dist/model/graph/ProtoNode.d.ts +16 -22
- package/dist/model/graph/ProtoNode.js +39 -42
- package/dist/model/graph/ProtoSelector.d.ts +5 -9
- package/dist/model/graph/ProtoSelector.js +2 -3
- package/dist/model/graph/index.d.ts +5 -0
- package/dist/model/graph/index.js +6 -7
- package/dist/model/index.d.ts +7 -0
- package/dist/model/index.js +8 -15
- package/dist/util/ClassUtil.d.ts +4 -8
- package/dist/util/ClassUtil.js +17 -18
- package/dist/util/index.d.ts +1 -0
- package/dist/util/index.js +2 -3
- package/package.json +6 -6
|
@@ -1,22 +1,18 @@
|
|
|
1
|
-
import { EggProtoImplClass, ProtoDescriptor } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
multiInstanceClazzList: EggProtoImplClass[];
|
|
10
|
-
protos: ProtoDescriptor[];
|
|
1
|
+
import { type EggProtoImplClass, type 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[];
|
|
11
9
|
}
|
|
12
|
-
interface ModuleDumpOptions {
|
|
13
|
-
|
|
10
|
+
export interface ModuleDumpOptions {
|
|
11
|
+
dumpDir?: string;
|
|
14
12
|
}
|
|
15
|
-
declare class ModuleDescriptorDumper {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
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>;
|
|
20
18
|
}
|
|
21
|
-
//#endregion
|
|
22
|
-
export { ModuleDescriptor, ModuleDescriptorDumper, ModuleDumpOptions };
|
|
@@ -1,33 +1,39 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
//#region src/model/ModuleDescriptor.ts
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import fs from 'node:fs/promises';
|
|
3
|
+
import {} from '@eggjs/tegg-types';
|
|
4
|
+
import { PrototypeUtil } from '@eggjs/core-decorator';
|
|
7
5
|
const DUMP_PATH = process.env.MODULE_DUMP_PATH;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
6
|
+
export class ModuleDescriptorDumper {
|
|
7
|
+
static stringifyDescriptor(moduleDescriptor) {
|
|
8
|
+
return '{'
|
|
9
|
+
+ `"name": "${moduleDescriptor.name}",`
|
|
10
|
+
+ `"unitPath": "${moduleDescriptor.unitPath}",`
|
|
11
|
+
+ (typeof moduleDescriptor.optional !== 'undefined' ? `"optional": ${moduleDescriptor.optional},` : '')
|
|
12
|
+
+ `"clazzList": [${moduleDescriptor.clazzList.map(t => {
|
|
13
|
+
return ModuleDescriptorDumper.stringifyClazz(t, moduleDescriptor);
|
|
14
|
+
}).join(',')}],`
|
|
15
|
+
+ `"multiInstanceClazzList": [${moduleDescriptor.multiInstanceClazzList.map(t => {
|
|
16
|
+
return ModuleDescriptorDumper.stringifyClazz(t, moduleDescriptor);
|
|
17
|
+
}).join(',')}],`
|
|
18
|
+
+ `"protos": [${moduleDescriptor.protos.map(t => {
|
|
19
|
+
return JSON.stringify(t);
|
|
20
|
+
}).join(',')}]`
|
|
21
|
+
+ '}';
|
|
22
|
+
}
|
|
23
|
+
static stringifyClazz(clazz, moduleDescriptor) {
|
|
24
|
+
return '{'
|
|
25
|
+
+ `"name": "${clazz.name}",`
|
|
26
|
+
+ (PrototypeUtil.getFilePath(clazz) ? `"filePath": "${path.relative(moduleDescriptor.unitPath, PrototypeUtil.getFilePath(clazz))}"` : '')
|
|
27
|
+
+ '}';
|
|
28
|
+
}
|
|
29
|
+
static dumpPath(desc, options) {
|
|
30
|
+
const dumpDir = DUMP_PATH ?? options?.dumpDir ?? desc.unitPath;
|
|
31
|
+
return path.join(dumpDir, '.egg', `${desc.name}_module_desc.json`);
|
|
32
|
+
}
|
|
33
|
+
static async dump(desc, options) {
|
|
34
|
+
const dumpPath = ModuleDescriptorDumper.dumpPath(desc, options);
|
|
35
|
+
await fs.mkdir(path.dirname(dumpPath), { recursive: true });
|
|
36
|
+
await fs.writeFile(dumpPath, ModuleDescriptorDumper.stringifyDescriptor(desc));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kdWxlRGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbC9Nb2R1bGVEZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVsQyxPQUFPLEVBQWdELE1BQU0sbUJBQW1CLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXRELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUM7QUFlL0MsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsZ0JBQWtDO1FBQzNELE9BQU8sR0FBRztjQUNOLFlBQVksZ0JBQWdCLENBQUMsSUFBSSxJQUFJO2NBQ3JDLGdCQUFnQixnQkFBZ0IsQ0FBQyxRQUFRLElBQUk7Y0FDN0MsQ0FBQyxPQUFPLGdCQUFnQixDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLGVBQWUsZ0JBQWdCLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztjQUNyRyxpQkFBaUIsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDcEQsT0FBTyxzQkFBc0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLENBQUM7WUFDcEUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJO2NBQ2QsOEJBQThCLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDOUUsT0FBTyxzQkFBc0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLENBQUM7WUFDcEUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJO2NBQ2QsY0FBYyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUM5QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHO2NBQ2IsR0FBRyxDQUFDO0lBQ1YsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBd0IsRUFBRSxnQkFBa0M7UUFDaEYsT0FBTyxHQUFHO2NBQ04sWUFBWSxLQUFLLENBQUMsSUFBSSxJQUFJO2NBQzFCLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Y0FDeEksR0FBRyxDQUFDO0lBQ1YsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBc0IsRUFBRSxPQUEyQjtRQUNqRSxNQUFNLE9BQU8sR0FBRyxTQUFTLElBQUksT0FBTyxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQy9ELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksbUJBQW1CLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBc0IsRUFBRSxPQUEyQjtRQUNuRSxNQUFNLFFBQVEsR0FBRyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUQsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxzQkFBc0IsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7Q0FDRiJ9
|
|
@@ -1,36 +1,32 @@
|
|
|
1
|
-
import { AccessLevel, InjectObjectDescriptor, ObjectInitTypeLike, ProtoDescriptor, ProtoDescriptorTypeLike, QualifierInfo } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
type: ProtoDescriptorTypeLike;
|
|
16
|
-
properQualifiers: Record<PropertyKey, QualifierInfo[]>;
|
|
1
|
+
import { AccessLevel, type InjectObjectDescriptor, type ObjectInitTypeLike, type ProtoDescriptor, type ProtoDescriptorTypeLike, type 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[]>;
|
|
17
15
|
}
|
|
18
|
-
declare abstract class AbstractProtoDescriptor implements ProtoDescriptor {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
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;
|
|
34
32
|
}
|
|
35
|
-
//#endregion
|
|
36
|
-
export { AbstractProtoDescriptor, AbstractProtoDescriptorOptions };
|
|
@@ -1,35 +1,31 @@
|
|
|
1
|
-
import { AccessLevel } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
//#endregion
|
|
35
|
-
export { AbstractProtoDescriptor };
|
|
1
|
+
import { AccessLevel, } from '@eggjs/tegg-types';
|
|
2
|
+
export class AbstractProtoDescriptor {
|
|
3
|
+
name;
|
|
4
|
+
accessLevel;
|
|
5
|
+
initType;
|
|
6
|
+
qualifiers;
|
|
7
|
+
injectObjects;
|
|
8
|
+
protoImplType;
|
|
9
|
+
defineModuleName;
|
|
10
|
+
defineUnitPath;
|
|
11
|
+
instanceModuleName;
|
|
12
|
+
instanceDefineUnitPath;
|
|
13
|
+
className;
|
|
14
|
+
properQualifiers;
|
|
15
|
+
type;
|
|
16
|
+
constructor(options) {
|
|
17
|
+
this.name = options.name;
|
|
18
|
+
this.accessLevel = options.accessLevel;
|
|
19
|
+
this.initType = options.initType;
|
|
20
|
+
this.qualifiers = options.qualifiers;
|
|
21
|
+
this.protoImplType = options.protoImplType;
|
|
22
|
+
this.injectObjects = options.injectObjects;
|
|
23
|
+
this.defineModuleName = options.defineModuleName;
|
|
24
|
+
this.defineUnitPath = options.defineUnitPath;
|
|
25
|
+
this.instanceModuleName = options.instanceModuleName;
|
|
26
|
+
this.instanceDefineUnitPath = options.instanceDefineUnitPath;
|
|
27
|
+
this.type = options.type;
|
|
28
|
+
this.properQualifiers = options.properQualifiers;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RQcm90b0Rlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWwvUHJvdG9EZXNjcmlwdG9yL0Fic3RyYWN0UHJvdG9EZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxXQUFXLEdBTVosTUFBTSxtQkFBbUIsQ0FBQztBQWlCM0IsTUFBTSxPQUFnQix1QkFBdUI7SUFDM0MsSUFBSSxDQUFjO0lBQ2xCLFdBQVcsQ0FBYztJQUN6QixRQUFRLENBQXFCO0lBQzdCLFVBQVUsQ0FBa0I7SUFDNUIsYUFBYSxDQUEyQjtJQUN4QyxhQUFhLENBQVM7SUFDdEIsZ0JBQWdCLENBQVM7SUFDekIsY0FBYyxDQUFTO0lBQ3ZCLGtCQUFrQixDQUFTO0lBQzNCLHNCQUFzQixDQUFTO0lBQy9CLFNBQVMsQ0FBVTtJQUNuQixnQkFBZ0IsQ0FBdUM7SUFDdkQsSUFBSSxDQUEwQjtJQUU5QixZQUFzQixPQUF1QztRQUMzRCxJQUFJLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQztRQUNqQyxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDO1FBQzNDLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUMzQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDO1FBQ2pELElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQztRQUM3QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDO1FBQ3JELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxPQUFPLENBQUMsc0JBQXNCLENBQUM7UUFDN0QsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7SUFDbkQsQ0FBQztDQUdGIn0=
|
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
interface ClassProtoDescriptorOptions extends Omit<AbstractProtoDescriptorOptions, 'type'> {
|
|
6
|
-
clazz: EggProtoImplClass;
|
|
1
|
+
import { type EggProtoImplClass, type ProtoDescriptor } from '@eggjs/tegg-types';
|
|
2
|
+
import { AbstractProtoDescriptor, type AbstractProtoDescriptorOptions } from './AbstractProtoDescriptor.ts';
|
|
3
|
+
export interface ClassProtoDescriptorOptions extends Omit<AbstractProtoDescriptorOptions, 'type'> {
|
|
4
|
+
clazz: EggProtoImplClass;
|
|
7
5
|
}
|
|
8
|
-
declare class ClassProtoDescriptor extends AbstractProtoDescriptor {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
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;
|
|
14
12
|
}
|
|
15
|
-
//#endregion
|
|
16
|
-
export { ClassProtoDescriptor, ClassProtoDescriptorOptions };
|
|
@@ -1,27 +1,30 @@
|
|
|
1
|
+
import { QualifierUtil } from '@eggjs/core-decorator';
|
|
2
|
+
import { ProtoDescriptorType } from '@eggjs/tegg-types';
|
|
1
3
|
import { AbstractProtoDescriptor } from "./AbstractProtoDescriptor.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
4
|
+
export class ClassProtoDescriptor extends AbstractProtoDescriptor {
|
|
5
|
+
clazz;
|
|
6
|
+
clazzName;
|
|
7
|
+
static isClassProtoDescriptor(descriptor) {
|
|
8
|
+
return descriptor.type === ProtoDescriptorType.CLASS;
|
|
9
|
+
}
|
|
10
|
+
constructor(options) {
|
|
11
|
+
super({
|
|
12
|
+
type: ProtoDescriptorType.CLASS,
|
|
13
|
+
...options,
|
|
14
|
+
});
|
|
15
|
+
this.clazz = options.clazz;
|
|
16
|
+
this.className = this.clazz.name;
|
|
17
|
+
}
|
|
18
|
+
equal(protoDescriptor) {
|
|
19
|
+
if (!ClassProtoDescriptor.isClassProtoDescriptor(protoDescriptor)) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return this.clazz === protoDescriptor.clazz
|
|
23
|
+
&& this.name === protoDescriptor.name
|
|
24
|
+
&& this.accessLevel === protoDescriptor.accessLevel
|
|
25
|
+
&& this.initType === protoDescriptor.initType
|
|
26
|
+
&& this.instanceModuleName === protoDescriptor.instanceModuleName
|
|
27
|
+
&& QualifierUtil.equalQualifiers(this.qualifiers, protoDescriptor.qualifiers);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xhc3NQcm90b0Rlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWwvUHJvdG9EZXNjcmlwdG9yL0NsYXNzUHJvdG9EZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQWdELG1CQUFtQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFdEcsT0FBTyxFQUFFLHVCQUF1QixFQUF1QyxNQUFNLDhCQUE4QixDQUFDO0FBTTVHLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx1QkFBdUI7SUFDL0QsS0FBSyxDQUFvQjtJQUN6QixTQUFTLENBQVM7SUFFbEIsTUFBTSxDQUFDLHNCQUFzQixDQUFDLFVBQTJCO1FBQ3ZELE9BQVEsVUFBc0MsQ0FBQyxJQUFJLEtBQUssbUJBQW1CLENBQUMsS0FBSyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxZQUFZLE9BQW9DO1FBQzlDLEtBQUssQ0FBQztZQUNKLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxLQUFLO1lBQy9CLEdBQUcsT0FBTztTQUNYLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO0lBQ25DLENBQUM7SUFFRCxLQUFLLENBQUMsZUFBZ0M7UUFDcEMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHNCQUFzQixDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7WUFDbEUsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLGVBQWUsQ0FBQyxLQUFLO2VBQ3RDLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLElBQUk7ZUFDbEMsSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsV0FBVztlQUNoRCxJQUFJLENBQUMsUUFBUSxLQUFLLGVBQWUsQ0FBQyxRQUFRO2VBQzFDLElBQUksQ0FBQyxrQkFBa0IsS0FBSyxlQUFlLENBQUMsa0JBQWtCO2VBQzlELGFBQWEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEYsQ0FBQztDQUNGIn0=
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export { };
|
|
1
|
+
export * from "./AbstractProtoDescriptor.js";
|
|
2
|
+
export * from "./ClassProtoDescriptor.js";
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWwvUHJvdG9EZXNjcmlwdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYywyQkFBMkIsQ0FBQyJ9
|
|
@@ -1,30 +1,26 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
static createByInstanceClazz(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): ProtoDescriptor;
|
|
27
|
-
static selectProto(proto: ProtoDescriptor, ctx: ProtoSelectorContext): boolean;
|
|
1
|
+
import { type EggProtoImplClass, type ObjectInitTypeLike, type ProtoDescriptor, type QualifierInfo, type MultiInstancePrototypeGetObjectsContext } from '@eggjs/tegg-types';
|
|
2
|
+
import { type ProtoSelectorContext } from './graph/index.ts';
|
|
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
|
+
}): Promise<ProtoDescriptor[]>;
|
|
12
|
+
static createByDynamicMultiInstanceClazz(clazz: EggProtoImplClass, options: {
|
|
13
|
+
defineModuleName: string;
|
|
14
|
+
defineUnitPath: string;
|
|
15
|
+
instanceModuleName: string;
|
|
16
|
+
instanceDefineUnitPath: string;
|
|
17
|
+
}): Promise<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;
|
|
28
26
|
}
|
|
29
|
-
//#endregion
|
|
30
|
-
export { ProtoDescriptorHelper };
|