@eggjs/core-decorator 4.0.0-beta.35 → 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.
@@ -1,10 +1,14 @@
1
- import { AccessLevel, ObjectInitType } from '@eggjs/tegg-types';
2
1
  import { Prototype } from "./Prototype.js";
3
- export function SingletonProto(params) {
4
- return Prototype({
5
- initType: ObjectInitType.SINGLETON,
6
- accessLevel: params?.accessLevel || AccessLevel.PRIVATE,
7
- ...params,
8
- });
2
+ import { AccessLevel, ObjectInitType } from "@eggjs/tegg-types";
3
+
4
+ //#region src/decorator/SingletonProto.ts
5
+ function SingletonProto(params) {
6
+ return Prototype({
7
+ initType: ObjectInitType.SINGLETON,
8
+ accessLevel: params?.accessLevel || AccessLevel.PRIVATE,
9
+ ...params
10
+ });
9
11
  }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2luZ2xldG9uUHJvdG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9yL1NpbmdsZXRvblByb3RvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHaEUsT0FBTyxFQUFFLFNBQVMsRUFBMkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxNQUFNLFVBQVUsY0FBYyxDQUFDLE1BQTZCO0lBQzFELE9BQU8sU0FBUyxDQUFDO1FBQ2YsUUFBUSxFQUFFLGNBQWMsQ0FBQyxTQUFTO1FBQ2xDLFdBQVcsRUFBRSxNQUFNLEVBQUUsV0FBVyxJQUFJLFdBQVcsQ0FBQyxPQUFPO1FBQ3ZELEdBQUcsTUFBTTtLQUNWLENBQUMsQ0FBQztBQUNMLENBQUMifQ==
12
+
13
+ //#endregion
14
+ export { SingletonProto };
@@ -1,10 +1,10 @@
1
- export * from './ConfigSource.ts';
2
- export * from './ContextProto.ts';
3
- export * from './EggQualifier.ts';
4
- export * from './InitTypeQualifier.ts';
5
- export * from './Inject.ts';
6
- export * from './ModuleQualifier.ts';
7
- export * from './MultiInstanceInfo.ts';
8
- export * from './MultiInstanceProto.ts';
9
- export * from './Prototype.ts';
10
- export * from './SingletonProto.ts';
1
+ import { ConfigSourceQualifier } from "./ConfigSource.js";
2
+ import { Prototype, PrototypeDecorator } from "./Prototype.js";
3
+ import { ContextProto } from "./ContextProto.js";
4
+ import { EggQualifier } from "./EggQualifier.js";
5
+ import { InitTypeQualifier } from "./InitTypeQualifier.js";
6
+ import { Inject, InjectDecorator, InjectOptional } from "./Inject.js";
7
+ import { ModuleQualifier } from "./ModuleQualifier.js";
8
+ import { MultiInstanceInfo } from "./MultiInstanceInfo.js";
9
+ import { MultiInstanceProto } from "./MultiInstanceProto.js";
10
+ import { SingletonProto } from "./SingletonProto.js";
@@ -1,11 +1,12 @@
1
- export * from "./ConfigSource.js";
2
- export * from "./ContextProto.js";
3
- export * from "./EggQualifier.js";
4
- export * from "./InitTypeQualifier.js";
5
- export * from "./Inject.js";
6
- export * from "./ModuleQualifier.js";
7
- export * from "./MultiInstanceInfo.js";
8
- export * from "./MultiInstanceProto.js";
9
- export * from "./Prototype.js";
10
- export * from "./SingletonProto.js";
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHFCQUFxQixDQUFDIn0=
1
+ import { ConfigSourceQualifier } from "./ConfigSource.js";
2
+ import { Prototype } from "./Prototype.js";
3
+ import { ContextProto } from "./ContextProto.js";
4
+ import { EggQualifier } from "./EggQualifier.js";
5
+ import { InitTypeQualifier } from "./InitTypeQualifier.js";
6
+ import { Inject, InjectOptional } from "./Inject.js";
7
+ import { ModuleQualifier } from "./ModuleQualifier.js";
8
+ import { MultiInstanceInfo } from "./MultiInstanceInfo.js";
9
+ import { MultiInstanceProto } from "./MultiInstanceProto.js";
10
+ import { SingletonProto } from "./SingletonProto.js";
11
+
12
+ export { };
package/dist/index.d.ts CHANGED
@@ -1,3 +1,17 @@
1
- export * from '@eggjs/tegg-types/core-decorator';
2
- export * from './decorator/index.ts';
3
- export * from './util/index.ts';
1
+ import { ConfigSourceQualifier } from "./decorator/ConfigSource.js";
2
+ import { Prototype, PrototypeDecorator } from "./decorator/Prototype.js";
3
+ import { ContextProto } from "./decorator/ContextProto.js";
4
+ import { EggQualifier } from "./decorator/EggQualifier.js";
5
+ import { InitTypeQualifier } from "./decorator/InitTypeQualifier.js";
6
+ import { Inject, InjectDecorator, InjectOptional } from "./decorator/Inject.js";
7
+ import { ModuleQualifier } from "./decorator/ModuleQualifier.js";
8
+ import { MultiInstanceInfo } from "./decorator/MultiInstanceInfo.js";
9
+ import { MultiInstanceProto } from "./decorator/MultiInstanceProto.js";
10
+ import { SingletonProto } from "./decorator/SingletonProto.js";
11
+ import "./decorator/index.js";
12
+ import { MetadataUtil } from "./util/MetadataUtil.js";
13
+ import { PrototypeUtil } from "./util/PrototypeUtil.js";
14
+ import { QualifierUtil } from "./util/QualifierUtil.js";
15
+ import "./util/index.js";
16
+ export * from "@eggjs/tegg-types/core-decorator";
17
+ export { ConfigSourceQualifier, ContextProto, EggQualifier, InitTypeQualifier, Inject, InjectDecorator, InjectOptional, MetadataUtil, ModuleQualifier, MultiInstanceInfo, MultiInstanceProto, Prototype, PrototypeDecorator, PrototypeUtil, QualifierUtil, SingletonProto };
package/dist/index.js CHANGED
@@ -1,4 +1,19 @@
1
- export * from '@eggjs/tegg-types/core-decorator';
2
- export * from "./decorator/index.js";
3
- export * from "./util/index.js";
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQ0FBa0MsQ0FBQztBQUVqRCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsaUJBQWlCLENBQUMifQ==
1
+ import { MetadataUtil } from "./util/MetadataUtil.js";
2
+ import { PrototypeUtil } from "./util/PrototypeUtil.js";
3
+ import { QualifierUtil } from "./util/QualifierUtil.js";
4
+ import "./util/index.js";
5
+ import { ConfigSourceQualifier } from "./decorator/ConfigSource.js";
6
+ import { Prototype } from "./decorator/Prototype.js";
7
+ import { ContextProto } from "./decorator/ContextProto.js";
8
+ import { EggQualifier } from "./decorator/EggQualifier.js";
9
+ import { InitTypeQualifier } from "./decorator/InitTypeQualifier.js";
10
+ import { Inject, InjectOptional } from "./decorator/Inject.js";
11
+ import { ModuleQualifier } from "./decorator/ModuleQualifier.js";
12
+ import { MultiInstanceInfo } from "./decorator/MultiInstanceInfo.js";
13
+ import { MultiInstanceProto } from "./decorator/MultiInstanceProto.js";
14
+ import { SingletonProto } from "./decorator/SingletonProto.js";
15
+ import "./decorator/index.js";
16
+
17
+ export * from "@eggjs/tegg-types/core-decorator"
18
+
19
+ export { ConfigSourceQualifier, ContextProto, EggQualifier, InitTypeQualifier, Inject, InjectOptional, MetadataUtil, ModuleQualifier, MultiInstanceInfo, MultiInstanceProto, Prototype, PrototypeUtil, QualifierUtil, SingletonProto };
@@ -1,35 +1,39 @@
1
- import type { EggProtoImplClass, MetaDataKey } from '@eggjs/tegg-types';
2
- export declare class MetadataUtil {
3
- static deleteMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass): void;
4
- static defineMetaData<T>(metadataKey: MetaDataKey, metadataValue: T, clazz: EggProtoImplClass): void;
5
- static getOwnMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass): T | undefined;
6
- static hasMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass, propKey?: PropertyKey): boolean;
7
- static getMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, propKey?: PropertyKey): T | undefined;
8
- static getBooleanMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass): boolean;
9
- static getOwnBooleanMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass): boolean;
10
- static getArrayMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass): Array<T>;
11
- /**
12
- * init array metadata
13
- * not inherit parent metadata
14
- * return value true means use default value
15
- * return value false means use map value
16
- */
17
- static initArrayMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, defaultValue: Array<T>): Array<T>;
18
- /**
19
- * init own array metadata
20
- * if parent metadata exists, inherit
21
- * if parent metadata not exits, use default value
22
- * return value true means use default value
23
- * return value false means use map value
24
- */
25
- static initOwnArrayMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, defaultValue: Array<T>): Array<T>;
26
- /**
27
- * init own map metadata
28
- * if parent metadata exists, inherit
29
- * if parent metadata not exits, use default value
30
- * return value true means use default value
31
- * return value false means use map value
32
- */
33
- static initOwnMapMetaData<K, V>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, defaultValue: Map<K, V>): Map<K, V>;
34
- static getOrStoreMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, metadataValue: T): T;
1
+ import { EggProtoImplClass, MetaDataKey } from "@eggjs/tegg-types";
2
+
3
+ //#region src/util/MetadataUtil.d.ts
4
+ declare class MetadataUtil {
5
+ static deleteMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass): void;
6
+ static defineMetaData<T>(metadataKey: MetaDataKey, metadataValue: T, clazz: EggProtoImplClass): void;
7
+ static getOwnMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass): T | undefined;
8
+ static hasMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass, propKey?: PropertyKey): boolean;
9
+ static getMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, propKey?: PropertyKey): T | undefined;
10
+ static getBooleanMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass): boolean;
11
+ static getOwnBooleanMetaData(metadataKey: MetaDataKey, clazz: EggProtoImplClass): boolean;
12
+ static getArrayMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass): Array<T>;
13
+ /**
14
+ * init array metadata
15
+ * not inherit parent metadata
16
+ * return value true means use default value
17
+ * return value false means use map value
18
+ */
19
+ static initArrayMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, defaultValue: Array<T>): Array<T>;
20
+ /**
21
+ * init own array metadata
22
+ * if parent metadata exists, inherit
23
+ * if parent metadata not exits, use default value
24
+ * return value true means use default value
25
+ * return value false means use map value
26
+ */
27
+ static initOwnArrayMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, defaultValue: Array<T>): Array<T>;
28
+ /**
29
+ * init own map metadata
30
+ * if parent metadata exists, inherit
31
+ * if parent metadata not exits, use default value
32
+ * return value true means use default value
33
+ * return value false means use map value
34
+ */
35
+ static initOwnMapMetaData<K, V>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, defaultValue: Map<K, V>): Map<K, V>;
36
+ static getOrStoreMetaData<T>(metadataKey: MetaDataKey, clazz: EggProtoImplClass, metadataValue: T): T;
35
37
  }
38
+ //#endregion
39
+ export { MetadataUtil };
@@ -1,83 +1,75 @@
1
- export class MetadataUtil {
2
- static deleteMetaData(metadataKey, clazz) {
3
- Reflect.deleteMetadata(metadataKey, clazz);
4
- }
5
- static defineMetaData(metadataKey, metadataValue, clazz) {
6
- Reflect.defineMetadata(metadataKey, metadataValue, clazz);
7
- }
8
- static getOwnMetaData(metadataKey, clazz) {
9
- return Reflect.getOwnMetadata(metadataKey, clazz);
10
- }
11
- static hasMetaData(metadataKey, clazz, propKey) {
12
- return Reflect.hasMetadata(metadataKey, clazz, propKey);
13
- }
14
- static getMetaData(metadataKey, clazz, propKey) {
15
- return Reflect.getMetadata(metadataKey, clazz, propKey);
16
- }
17
- static getBooleanMetaData(metadataKey, clazz) {
18
- return !!this.getMetaData(metadataKey, clazz);
19
- }
20
- static getOwnBooleanMetaData(metadataKey, clazz) {
21
- return !!this.getOwnMetaData(metadataKey, clazz);
22
- }
23
- static getArrayMetaData(metadataKey, clazz) {
24
- return this.getMetaData(metadataKey, clazz) || [];
25
- }
26
- /**
27
- * init array metadata
28
- * not inherit parent metadata
29
- * return value true means use default value
30
- * return value false means use map value
31
- */
32
- static initArrayMetaData(metadataKey, clazz, defaultValue) {
33
- const ownMetaData = this.getOwnMetaData(metadataKey, clazz);
34
- if (!ownMetaData) {
35
- this.defineMetaData(metadataKey, defaultValue, clazz);
36
- }
37
- return this.getOwnMetaData(metadataKey, clazz);
38
- }
39
- /**
40
- * init own array metadata
41
- * if parent metadata exists, inherit
42
- * if parent metadata not exits, use default value
43
- * return value true means use default value
44
- * return value false means use map value
45
- */
46
- static initOwnArrayMetaData(metadataKey, clazz, defaultValue) {
47
- const ownMetaData = this.getOwnMetaData(metadataKey, clazz);
48
- if (!ownMetaData) {
49
- const parentValue = this.getMetaData(metadataKey, clazz);
50
- const ownDefaultValue = parentValue || defaultValue;
51
- const selfValue = ownDefaultValue.slice();
52
- this.defineMetaData(metadataKey, selfValue, clazz);
53
- }
54
- return this.getOwnMetaData(metadataKey, clazz);
55
- }
56
- /**
57
- * init own map metadata
58
- * if parent metadata exists, inherit
59
- * if parent metadata not exits, use default value
60
- * return value true means use default value
61
- * return value false means use map value
62
- */
63
- static initOwnMapMetaData(metadataKey, clazz, defaultValue) {
64
- const ownMetaData = this.getOwnMetaData(metadataKey, clazz);
65
- if (!ownMetaData) {
66
- const parentValue = this.getMetaData(metadataKey, clazz);
67
- const selfValue = new Map();
68
- const ownDefaultValue = parentValue || defaultValue;
69
- for (const [k, v] of ownDefaultValue) {
70
- selfValue.set(k, v);
71
- }
72
- this.defineMetaData(metadataKey, selfValue, clazz);
73
- }
74
- return this.getOwnMetaData(metadataKey, clazz);
75
- }
76
- static getOrStoreMetaData(metadataKey, clazz, metadataValue) {
77
- if (!Reflect.hasMetadata(metadataKey, clazz)) {
78
- Reflect.defineMetadata(metadataKey, metadataValue, clazz);
79
- }
80
- return Reflect.getMetadata(metadataKey, clazz);
81
- }
82
- }
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWV0YWRhdGFVdGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvTWV0YWRhdGFVdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLE1BQU0sQ0FBQyxjQUFjLENBQUMsV0FBd0IsRUFBRSxLQUF3QjtRQUN0RSxPQUFPLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBSSxXQUF3QixFQUFFLGFBQWdCLEVBQUUsS0FBd0I7UUFDM0YsT0FBTyxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFJLFdBQXdCLEVBQUUsS0FBd0I7UUFDekUsT0FBTyxPQUFPLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxXQUF3QixFQUFFLEtBQXdCLEVBQUUsT0FBcUI7UUFDMUYsT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsT0FBaUIsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFJLFdBQXdCLEVBQUUsS0FBd0IsRUFBRSxPQUFxQjtRQUM3RixPQUFPLE9BQU8sQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxPQUFpQixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxXQUF3QixFQUFFLEtBQXdCO1FBQzFFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxNQUFNLENBQUMscUJBQXFCLENBQUMsV0FBd0IsRUFB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
1
+ //#region src/util/MetadataUtil.ts
2
+ var MetadataUtil = class {
3
+ static deleteMetaData(metadataKey, clazz) {
4
+ Reflect.deleteMetadata(metadataKey, clazz);
5
+ }
6
+ static defineMetaData(metadataKey, metadataValue, clazz) {
7
+ Reflect.defineMetadata(metadataKey, metadataValue, clazz);
8
+ }
9
+ static getOwnMetaData(metadataKey, clazz) {
10
+ return Reflect.getOwnMetadata(metadataKey, clazz);
11
+ }
12
+ static hasMetaData(metadataKey, clazz, propKey) {
13
+ return Reflect.hasMetadata(metadataKey, clazz, propKey);
14
+ }
15
+ static getMetaData(metadataKey, clazz, propKey) {
16
+ return Reflect.getMetadata(metadataKey, clazz, propKey);
17
+ }
18
+ static getBooleanMetaData(metadataKey, clazz) {
19
+ return !!this.getMetaData(metadataKey, clazz);
20
+ }
21
+ static getOwnBooleanMetaData(metadataKey, clazz) {
22
+ return !!this.getOwnMetaData(metadataKey, clazz);
23
+ }
24
+ static getArrayMetaData(metadataKey, clazz) {
25
+ return this.getMetaData(metadataKey, clazz) || [];
26
+ }
27
+ /**
28
+ * init array metadata
29
+ * not inherit parent metadata
30
+ * return value true means use default value
31
+ * return value false means use map value
32
+ */
33
+ static initArrayMetaData(metadataKey, clazz, defaultValue) {
34
+ if (!this.getOwnMetaData(metadataKey, clazz)) this.defineMetaData(metadataKey, defaultValue, clazz);
35
+ return this.getOwnMetaData(metadataKey, clazz);
36
+ }
37
+ /**
38
+ * init own array metadata
39
+ * if parent metadata exists, inherit
40
+ * if parent metadata not exits, use default value
41
+ * return value true means use default value
42
+ * return value false means use map value
43
+ */
44
+ static initOwnArrayMetaData(metadataKey, clazz, defaultValue) {
45
+ if (!this.getOwnMetaData(metadataKey, clazz)) {
46
+ const selfValue = (this.getMetaData(metadataKey, clazz) || defaultValue).slice();
47
+ this.defineMetaData(metadataKey, selfValue, clazz);
48
+ }
49
+ return this.getOwnMetaData(metadataKey, clazz);
50
+ }
51
+ /**
52
+ * init own map metadata
53
+ * if parent metadata exists, inherit
54
+ * if parent metadata not exits, use default value
55
+ * return value true means use default value
56
+ * return value false means use map value
57
+ */
58
+ static initOwnMapMetaData(metadataKey, clazz, defaultValue) {
59
+ if (!this.getOwnMetaData(metadataKey, clazz)) {
60
+ const parentValue = this.getMetaData(metadataKey, clazz);
61
+ const selfValue = /* @__PURE__ */ new Map();
62
+ const ownDefaultValue = parentValue || defaultValue;
63
+ for (const [k, v] of ownDefaultValue) selfValue.set(k, v);
64
+ this.defineMetaData(metadataKey, selfValue, clazz);
65
+ }
66
+ return this.getOwnMetaData(metadataKey, clazz);
67
+ }
68
+ static getOrStoreMetaData(metadataKey, clazz, metadataValue) {
69
+ if (!Reflect.hasMetadata(metadataKey, clazz)) Reflect.defineMetadata(metadataKey, metadataValue, clazz);
70
+ return Reflect.getMetadata(metadataKey, clazz);
71
+ }
72
+ };
73
+
74
+ //#endregion
75
+ export { MetadataUtil };
@@ -1,108 +1,112 @@
1
- import { type EggMultiInstanceCallbackPrototypeInfo, type EggMultiInstancePrototypeInfo, type EggProtoImplClass, type EggPrototypeInfo, type EggPrototypeName, type InjectConstructorInfo, type InjectObjectInfo, InjectType, type MultiInstancePrototypeGetObjectsContext, MultiInstanceType, type QualifierAttribute } from '@eggjs/tegg-types';
2
- export declare class PrototypeUtil {
3
- static readonly IS_EGG_OBJECT_PROTOTYPE: symbol;
4
- static readonly IS_EGG_OBJECT_MULTI_INSTANCE_PROTOTYPE: symbol;
5
- static readonly FILE_PATH: symbol;
6
- static readonly PROTOTYPE_PROPERTY: symbol;
7
- static readonly MULTI_INSTANCE_PROTOTYPE_STATIC_PROPERTY: symbol;
8
- static readonly MULTI_INSTANCE_PROTOTYPE_CALLBACK_PROPERTY: symbol;
9
- static readonly INJECT_OBJECT_NAME_SET: symbol;
10
- static readonly INJECT_TYPE: symbol;
11
- static readonly INJECT_CONSTRUCTOR_NAME_SET: symbol;
12
- static readonly CLAZZ_PROTO: symbol;
13
- static readonly MULTI_INSTANCE_CONSTRUCTOR_INDEX: symbol;
14
- static readonly MULTI_INSTANCE_CONSTRUCTOR_ATTRIBUTES: symbol;
15
- /**
16
- * Mark class is egg object prototype
17
- * @param {Function} clazz -
18
- */
19
- static setIsEggPrototype(clazz: EggProtoImplClass): void;
20
- /**
21
- * If class is egg object prototype, return true
22
- * @param {Function} clazz -
23
- */
24
- static isEggPrototype(clazz: EggProtoImplClass): boolean;
25
- /**
26
- * Mark class is egg object multi instance prototype
27
- * @param {Function} clazz -
28
- */
29
- static setIsEggMultiInstancePrototype(clazz: EggProtoImplClass): void;
30
- /**
31
- * If class is egg object multi instance prototype, return true
32
- * @param {Function} clazz -
33
- */
34
- static isEggMultiInstancePrototype(clazz: EggProtoImplClass): boolean;
35
- /**
36
- * Get the type of the egg multi-instance prototype.
37
- * @param {Function} clazz -
38
- */
39
- static getEggMultiInstancePrototypeType(clazz: EggProtoImplClass): MultiInstanceType | undefined;
40
- /**
41
- * set class file path
42
- * @param {Function} clazz -
43
- * @param {string} filePath -
44
- */
45
- static setFilePath(clazz: EggProtoImplClass, filePath: string): void;
46
- /**
47
- * get class file path
48
- * @param {Function} clazz -
49
- */
50
- static getFilePath(clazz: EggProtoImplClass): string | undefined;
51
- /**
52
- * set class property
53
- * @param {EggProtoImplClass} clazz -
54
- * @param {EggPrototypeInfo} property -
55
- */
56
- static setProperty(clazz: EggProtoImplClass, property: EggPrototypeInfo): void;
57
- /**
58
- * get class property
59
- * @param {EggProtoImplClass} clazz -
60
- * @return {EggPrototypeInfo} -
61
- */
62
- static getProperty(clazz: EggProtoImplClass): EggPrototypeInfo | undefined;
63
- static getInitType(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<string | undefined>;
64
- static getAccessLevel(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<string | undefined>;
65
- static getObjNames(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<EggPrototypeName[]>;
66
- /**
67
- * set class property
68
- * @param {EggProtoImplClass} clazz -
69
- * @param {EggPrototypeInfo} property -
70
- */
71
- static setMultiInstanceStaticProperty(clazz: EggProtoImplClass, property: EggMultiInstancePrototypeInfo): void;
72
- /**
73
- * set class property
74
- * @param {EggProtoImplClass} clazz -
75
- * @param {EggPrototypeInfo} property -
76
- */
77
- static setMultiInstanceCallbackProperty(clazz: EggProtoImplClass, property: EggMultiInstanceCallbackPrototypeInfo): void;
78
- /**
79
- * Get instance property of Static multi-instance prototype.
80
- * @param {EggProtoImplClass} clazz -
81
- */
82
- static getStaticMultiInstanceProperty(clazz: EggProtoImplClass): EggMultiInstancePrototypeInfo | undefined;
83
- /**
84
- * Get instance property of Dynamic multi-instance prototype.
85
- * @param {EggProtoImplClass} clazz -
86
- * @param {MultiInstancePrototypeGetObjectsContext} ctx -
87
- */
88
- static getDynamicMultiInstanceProperty(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<EggMultiInstancePrototypeInfo | undefined>;
89
- /**
90
- * get class property
91
- * @param {EggProtoImplClass} clazz -
92
- * @param {MultiInstancePrototypeGetObjectsContext} ctx -
93
- */
94
- static getMultiInstanceProperty(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<EggMultiInstancePrototypeInfo | undefined>;
95
- static setMultiInstanceConstructorAttributes(clazz: EggProtoImplClass, attributes: QualifierAttribute[]): void;
96
- static getMultiInstanceConstructorAttributes(clazz: EggProtoImplClass): QualifierAttribute[];
97
- static setMultiInstanceConstructorIndex(clazz: EggProtoImplClass, index: number): void;
98
- static getMultiInstanceConstructorIndex(clazz: EggProtoImplClass): number | undefined;
99
- static setInjectType(clazz: EggProtoImplClass, type: InjectType): void;
100
- static addInjectObject(clazz: EggProtoImplClass, injectObject: InjectObjectInfo): void;
101
- static addInjectConstructor(clazz: EggProtoImplClass, injectConstructorInfo: InjectConstructorInfo): void;
102
- static getInjectType(clazz: EggProtoImplClass): InjectType | undefined;
103
- static getInjectObjects(clazz: EggProtoImplClass): Array<InjectObjectInfo | InjectConstructorInfo>;
104
- static getClazzProto(clazz: EggProtoImplClass): object | undefined;
105
- static setClazzProto(clazz: EggProtoImplClass, proto: object): void;
106
- static getDesignType(clazz: EggProtoImplClass, propKey?: PropertyKey): unknown | undefined;
107
- static getDesignParamtypes(clazz: EggProtoImplClass, propKey?: PropertyKey): unknown[] | undefined;
1
+ import { EggMultiInstanceCallbackPrototypeInfo, EggMultiInstancePrototypeInfo, EggProtoImplClass, EggPrototypeInfo, EggPrototypeName, InjectConstructorInfo, InjectObjectInfo, InjectType, MultiInstancePrototypeGetObjectsContext, MultiInstanceType, QualifierAttribute } from "@eggjs/tegg-types";
2
+
3
+ //#region src/util/PrototypeUtil.d.ts
4
+ declare class PrototypeUtil {
5
+ static readonly IS_EGG_OBJECT_PROTOTYPE: symbol;
6
+ static readonly IS_EGG_OBJECT_MULTI_INSTANCE_PROTOTYPE: symbol;
7
+ static readonly FILE_PATH: symbol;
8
+ static readonly PROTOTYPE_PROPERTY: symbol;
9
+ static readonly MULTI_INSTANCE_PROTOTYPE_STATIC_PROPERTY: symbol;
10
+ static readonly MULTI_INSTANCE_PROTOTYPE_CALLBACK_PROPERTY: symbol;
11
+ static readonly INJECT_OBJECT_NAME_SET: symbol;
12
+ static readonly INJECT_TYPE: symbol;
13
+ static readonly INJECT_CONSTRUCTOR_NAME_SET: symbol;
14
+ static readonly CLAZZ_PROTO: symbol;
15
+ static readonly MULTI_INSTANCE_CONSTRUCTOR_INDEX: symbol;
16
+ static readonly MULTI_INSTANCE_CONSTRUCTOR_ATTRIBUTES: symbol;
17
+ /**
18
+ * Mark class is egg object prototype
19
+ * @param {Function} clazz -
20
+ */
21
+ static setIsEggPrototype(clazz: EggProtoImplClass): void;
22
+ /**
23
+ * If class is egg object prototype, return true
24
+ * @param {Function} clazz -
25
+ */
26
+ static isEggPrototype(clazz: EggProtoImplClass): boolean;
27
+ /**
28
+ * Mark class is egg object multi instance prototype
29
+ * @param {Function} clazz -
30
+ */
31
+ static setIsEggMultiInstancePrototype(clazz: EggProtoImplClass): void;
32
+ /**
33
+ * If class is egg object multi instance prototype, return true
34
+ * @param {Function} clazz -
35
+ */
36
+ static isEggMultiInstancePrototype(clazz: EggProtoImplClass): boolean;
37
+ /**
38
+ * Get the type of the egg multi-instance prototype.
39
+ * @param {Function} clazz -
40
+ */
41
+ static getEggMultiInstancePrototypeType(clazz: EggProtoImplClass): MultiInstanceType | undefined;
42
+ /**
43
+ * set class file path
44
+ * @param {Function} clazz -
45
+ * @param {string} filePath -
46
+ */
47
+ static setFilePath(clazz: EggProtoImplClass, filePath: string): void;
48
+ /**
49
+ * get class file path
50
+ * @param {Function} clazz -
51
+ */
52
+ static getFilePath(clazz: EggProtoImplClass): string | undefined;
53
+ /**
54
+ * set class property
55
+ * @param {EggProtoImplClass} clazz -
56
+ * @param {EggPrototypeInfo} property -
57
+ */
58
+ static setProperty(clazz: EggProtoImplClass, property: EggPrototypeInfo): void;
59
+ /**
60
+ * get class property
61
+ * @param {EggProtoImplClass} clazz -
62
+ * @return {EggPrototypeInfo} -
63
+ */
64
+ static getProperty(clazz: EggProtoImplClass): EggPrototypeInfo | undefined;
65
+ static getInitType(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<string | undefined>;
66
+ static getAccessLevel(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<string | undefined>;
67
+ static getObjNames(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<EggPrototypeName[]>;
68
+ /**
69
+ * set class property
70
+ * @param {EggProtoImplClass} clazz -
71
+ * @param {EggPrototypeInfo} property -
72
+ */
73
+ static setMultiInstanceStaticProperty(clazz: EggProtoImplClass, property: EggMultiInstancePrototypeInfo): void;
74
+ /**
75
+ * set class property
76
+ * @param {EggProtoImplClass} clazz -
77
+ * @param {EggPrototypeInfo} property -
78
+ */
79
+ static setMultiInstanceCallbackProperty(clazz: EggProtoImplClass, property: EggMultiInstanceCallbackPrototypeInfo): void;
80
+ /**
81
+ * Get instance property of Static multi-instance prototype.
82
+ * @param {EggProtoImplClass} clazz -
83
+ */
84
+ static getStaticMultiInstanceProperty(clazz: EggProtoImplClass): EggMultiInstancePrototypeInfo | undefined;
85
+ /**
86
+ * Get instance property of Dynamic multi-instance prototype.
87
+ * @param {EggProtoImplClass} clazz -
88
+ * @param {MultiInstancePrototypeGetObjectsContext} ctx -
89
+ */
90
+ static getDynamicMultiInstanceProperty(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<EggMultiInstancePrototypeInfo | undefined>;
91
+ /**
92
+ * get class property
93
+ * @param {EggProtoImplClass} clazz -
94
+ * @param {MultiInstancePrototypeGetObjectsContext} ctx -
95
+ */
96
+ static getMultiInstanceProperty(clazz: EggProtoImplClass, ctx: MultiInstancePrototypeGetObjectsContext): Promise<EggMultiInstancePrototypeInfo | undefined>;
97
+ static setMultiInstanceConstructorAttributes(clazz: EggProtoImplClass, attributes: QualifierAttribute[]): void;
98
+ static getMultiInstanceConstructorAttributes(clazz: EggProtoImplClass): QualifierAttribute[];
99
+ static setMultiInstanceConstructorIndex(clazz: EggProtoImplClass, index: number): void;
100
+ static getMultiInstanceConstructorIndex(clazz: EggProtoImplClass): number | undefined;
101
+ static setInjectType(clazz: EggProtoImplClass, type: InjectType): void;
102
+ static addInjectObject(clazz: EggProtoImplClass, injectObject: InjectObjectInfo): void;
103
+ static addInjectConstructor(clazz: EggProtoImplClass, injectConstructorInfo: InjectConstructorInfo): void;
104
+ static getInjectType(clazz: EggProtoImplClass): InjectType | undefined;
105
+ static getInjectObjects(clazz: EggProtoImplClass): Array<InjectObjectInfo | InjectConstructorInfo>;
106
+ static getClazzProto(clazz: EggProtoImplClass): object | undefined;
107
+ static setClazzProto(clazz: EggProtoImplClass, proto: object): void;
108
+ static getDesignType(clazz: EggProtoImplClass, propKey?: PropertyKey): unknown | undefined;
109
+ static getDesignParamtypes(clazz: EggProtoImplClass, propKey?: PropertyKey): unknown[] | undefined;
108
110
  }
111
+ //#endregion
112
+ export { PrototypeUtil };