@eggjs/controller-decorator 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.
- package/dist/builder/ControllerMetaBuilderFactory.d.ts +10 -6
- package/dist/builder/ControllerMetaBuilderFactory.js +37 -41
- package/dist/builder/index.d.ts +1 -1
- package/dist/builder/index.js +3 -2
- package/dist/decorator/Acl.d.ts +4 -1
- package/dist/decorator/Acl.js +23 -21
- package/dist/decorator/Context.d.ts +4 -1
- package/dist/decorator/Context.js +15 -10
- package/dist/decorator/Middleware.d.ts +6 -2
- package/dist/decorator/Middleware.js +49 -61
- package/dist/decorator/http/HTTPController.d.ts +6 -2
- package/dist/decorator/http/HTTPController.js +22 -28
- package/dist/decorator/http/HTTPMethod.d.ts +6 -2
- package/dist/decorator/http/HTTPMethod.js +20 -16
- package/dist/decorator/http/HTTPParam.d.ts +152 -166
- package/dist/decorator/http/HTTPParam.js +208 -226
- package/dist/decorator/http/Host.d.ts +6 -2
- package/dist/decorator/http/Host.js +26 -24
- package/dist/decorator/http/index.d.ts +5 -4
- package/dist/decorator/http/index.js +7 -5
- package/dist/decorator/index.d.ts +8 -4
- package/dist/decorator/index.js +10 -5
- package/dist/impl/http/HTTPControllerMetaBuilder.d.ts +13 -8
- package/dist/impl/http/HTTPControllerMetaBuilder.js +58 -55
- package/dist/impl/http/HTTPControllerMethodMetaBuilder.d.ts +15 -10
- package/dist/impl/http/HTTPControllerMethodMetaBuilder.js +80 -96
- package/dist/impl/http/index.d.ts +2 -2
- package/dist/impl/http/index.js +4 -3
- package/dist/impl/index.d.ts +3 -1
- package/dist/impl/index.js +5 -2
- package/dist/index.d.ts +27 -6
- package/dist/index.js +29 -7
- package/dist/model/HTTPControllerMeta.d.ts +24 -21
- package/dist/model/HTTPControllerMeta.js +53 -57
- package/dist/model/HTTPCookies.d.ts +2 -1
- package/dist/model/HTTPCookies.js +3 -2
- package/dist/model/HTTPMethodMeta.d.ts +59 -56
- package/dist/model/HTTPMethodMeta.js +102 -124
- package/dist/model/index.d.ts +3 -3
- package/dist/model/index.js +5 -4
- package/dist/util/ControllerInfoUtil.d.ts +19 -16
- package/dist/util/ControllerInfoUtil.js +48 -46
- package/dist/util/ControllerMetadataUtil.d.ts +8 -4
- package/dist/util/ControllerMetadataUtil.js +21 -20
- package/dist/util/HTTPInfoUtil.d.ts +19 -15
- package/dist/util/HTTPInfoUtil.js +53 -64
- package/dist/util/HTTPPriorityUtil.d.ts +22 -19
- package/dist/util/HTTPPriorityUtil.js +39 -43
- package/dist/util/MethodInfoUtil.d.ts +22 -19
- package/dist/util/MethodInfoUtil.js +62 -72
- package/dist/util/index.d.ts +8 -6
- package/dist/util/index.js +10 -7
- package/dist/util/validator/ControllerValidator.d.ts +7 -3
- package/dist/util/validator/ControllerValidator.js +15 -14
- package/dist/util/validator/MethodValidator.d.ts +7 -3
- package/dist/util/validator/MethodValidator.js +30 -30
- package/dist/util/validator/index.d.ts +2 -2
- package/dist/util/validator/index.js +4 -3
- package/package.json +32 -36
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { ControllerMetadata, EggProtoImplClass } from "@eggjs/tegg-types";
|
|
2
|
+
|
|
3
|
+
//#region src/util/ControllerMetadataUtil.d.ts
|
|
4
|
+
declare class ControllerMetadataUtil {
|
|
5
|
+
static setControllerMetadata(clazz: EggProtoImplClass, metaData: ControllerMetadata): void;
|
|
6
|
+
static getControllerMetadata(clazz: EggProtoImplClass): ControllerMetadata | undefined;
|
|
5
7
|
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { ControllerMetadataUtil };
|
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
//#
|
|
1
|
+
import { ControllerMetaBuilderFactory } from "../builder/ControllerMetaBuilderFactory.js";
|
|
2
|
+
import "../builder/index.js";
|
|
3
|
+
import { MetadataUtil } from "@eggjs/core-decorator";
|
|
4
|
+
import { CONTROLLER_META_DATA } from "@eggjs/tegg-types";
|
|
5
|
+
|
|
6
|
+
//#region src/util/ControllerMetadataUtil.ts
|
|
7
|
+
var ControllerMetadataUtil = class ControllerMetadataUtil {
|
|
8
|
+
static setControllerMetadata(clazz, metaData) {
|
|
9
|
+
MetadataUtil.defineMetaData(CONTROLLER_META_DATA, metaData, clazz);
|
|
10
|
+
}
|
|
11
|
+
static getControllerMetadata(clazz) {
|
|
12
|
+
let metadata = MetadataUtil.getOwnMetaData(CONTROLLER_META_DATA, clazz);
|
|
13
|
+
if (metadata) return metadata;
|
|
14
|
+
metadata = ControllerMetaBuilderFactory.build(clazz);
|
|
15
|
+
if (metadata) ControllerMetadataUtil.setControllerMetadata(clazz, metadata);
|
|
16
|
+
return metadata;
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
//#endregion
|
|
21
|
+
export { ControllerMetadataUtil };
|
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { EggProtoImplClass, HTTPMethodEnum, HTTPParamType } from "@eggjs/tegg-types";
|
|
2
|
+
|
|
3
|
+
//#region src/util/HTTPInfoUtil.d.ts
|
|
4
|
+
declare class HTTPInfoUtil {
|
|
5
|
+
static setHTTPPath(path: string, clazz: EggProtoImplClass): void;
|
|
6
|
+
static getHTTPPath(clazz: EggProtoImplClass): string | undefined;
|
|
7
|
+
static setHTTPMethodPath(path: string, clazz: EggProtoImplClass, methodName: string): void;
|
|
8
|
+
static getHTTPMethodPath(clazz: EggProtoImplClass, methodName: string): string | undefined;
|
|
9
|
+
static setHTTPMethodMethod(method: HTTPMethodEnum, clazz: EggProtoImplClass, methodName: string): void;
|
|
10
|
+
static getHTTPMethodMethod(clazz: EggProtoImplClass, methodName: string): HTTPMethodEnum | undefined;
|
|
11
|
+
static setHTTPMethodParamType(paramType: HTTPParamType, parameterIndex: number, clazz: EggProtoImplClass, methodName: string): void;
|
|
12
|
+
static getParamIndexList(clazz: EggProtoImplClass, methodName: string): number[];
|
|
13
|
+
static getHTTPMethodParamType(parameterIndex: number, clazz: EggProtoImplClass, methodName: string): HTTPParamType | undefined;
|
|
14
|
+
static setHTTPMethodParamName(paramName: string, parameterIndex: number, clazz: EggProtoImplClass, methodName: string): void;
|
|
15
|
+
static getHTTPMethodParamName(parameterIndex: number, clazz: EggProtoImplClass, methodName: string): string | undefined;
|
|
16
|
+
static getHTTPMethodPriority(clazz: EggProtoImplClass, methodName: string): number | undefined;
|
|
17
|
+
static setHTTPMethodPriority(priority: number, clazz: EggProtoImplClass, methodName: string): void;
|
|
16
18
|
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { HTTPInfoUtil };
|
|
@@ -1,64 +1,53 @@
|
|
|
1
|
-
import { MetadataUtil } from
|
|
2
|
-
import { CONTROLLER_HTTP_PATH, CONTROLLER_METHOD_METHOD_MAP, CONTROLLER_METHOD_PARAM_NAME_MAP, CONTROLLER_METHOD_PARAM_TYPE_MAP, CONTROLLER_METHOD_PATH_MAP, CONTROLLER_METHOD_PRIORITY
|
|
3
|
-
import { MapUtil } from
|
|
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
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
static getHTTPMethodPriority(clazz, methodName) {
|
|
56
|
-
const methodPriorityMap = MetadataUtil.getMetaData(CONTROLLER_METHOD_PRIORITY, clazz);
|
|
57
|
-
return methodPriorityMap?.get(methodName);
|
|
58
|
-
}
|
|
59
|
-
static setHTTPMethodPriority(priority, clazz, methodName) {
|
|
60
|
-
const methodPriorityMap = MetadataUtil.initOwnMapMetaData(CONTROLLER_METHOD_PRIORITY, clazz, new Map());
|
|
61
|
-
methodPriorityMap.set(methodName, priority);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRUUEluZm9VdGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvSFRUUEluZm9VdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLDRCQUE0QixFQUM1QixnQ0FBZ0MsRUFDaEMsZ0NBQWdDLEVBQ2hDLDBCQUEwQixFQUMxQiwwQkFBMEIsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQUUzQixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFRbEQsTUFBTSxPQUFPLFlBQVk7SUFDdkIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFZLEVBQUUsS0FBd0I7UUFDdkQsWUFBWSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBd0I7UUFDekMsT0FBTyxZQUFZLENBQUMsV0FBVyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxNQUFNLENBQUMsaUJBQWlCLENBQUMsSUFBWSxFQUFFLEtBQXdCLEVBQUUsVUFBa0I7UUFDakYsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDLGtCQUFrQixDQUFDLDBCQUEwQixFQUFFLEtBQUssRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDcEcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxLQUF3QixFQUFFLFVBQWtCO1FBQ25FLE1BQU0sYUFBYSxHQUFrQyxZQUFZLENBQUMsV0FBVyxDQUFDLDBCQUEwQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pILE9BQU8sYUFBYSxFQUFFLEdBQUcs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
|
|
1
|
+
import { MetadataUtil } from "@eggjs/core-decorator";
|
|
2
|
+
import { CONTROLLER_HTTP_PATH, CONTROLLER_METHOD_METHOD_MAP, CONTROLLER_METHOD_PARAM_NAME_MAP, CONTROLLER_METHOD_PARAM_TYPE_MAP, CONTROLLER_METHOD_PATH_MAP, CONTROLLER_METHOD_PRIORITY } from "@eggjs/tegg-types";
|
|
3
|
+
import { MapUtil } from "@eggjs/tegg-common-util";
|
|
4
|
+
|
|
5
|
+
//#region src/util/HTTPInfoUtil.ts
|
|
6
|
+
var HTTPInfoUtil = class {
|
|
7
|
+
static setHTTPPath(path, clazz) {
|
|
8
|
+
MetadataUtil.defineMetaData(CONTROLLER_HTTP_PATH, path, clazz);
|
|
9
|
+
}
|
|
10
|
+
static getHTTPPath(clazz) {
|
|
11
|
+
return MetadataUtil.getMetaData(CONTROLLER_HTTP_PATH, clazz);
|
|
12
|
+
}
|
|
13
|
+
static setHTTPMethodPath(path, clazz, methodName) {
|
|
14
|
+
MetadataUtil.initOwnMapMetaData(CONTROLLER_METHOD_PATH_MAP, clazz, /* @__PURE__ */ new Map()).set(methodName, path);
|
|
15
|
+
}
|
|
16
|
+
static getHTTPMethodPath(clazz, methodName) {
|
|
17
|
+
return MetadataUtil.getMetaData(CONTROLLER_METHOD_PATH_MAP, clazz)?.get(methodName);
|
|
18
|
+
}
|
|
19
|
+
static setHTTPMethodMethod(method, clazz, methodName) {
|
|
20
|
+
MetadataUtil.initOwnMapMetaData(CONTROLLER_METHOD_METHOD_MAP, clazz, /* @__PURE__ */ new Map()).set(methodName, method);
|
|
21
|
+
}
|
|
22
|
+
static getHTTPMethodMethod(clazz, methodName) {
|
|
23
|
+
return MetadataUtil.getMetaData(CONTROLLER_METHOD_METHOD_MAP, clazz)?.get(methodName);
|
|
24
|
+
}
|
|
25
|
+
static setHTTPMethodParamType(paramType, parameterIndex, clazz, methodName) {
|
|
26
|
+
const methodParamMap = MetadataUtil.initOwnMapMetaData(CONTROLLER_METHOD_PARAM_TYPE_MAP, clazz, /* @__PURE__ */ new Map());
|
|
27
|
+
MapUtil.getOrStore(methodParamMap, methodName, /* @__PURE__ */ new Map()).set(parameterIndex, paramType);
|
|
28
|
+
}
|
|
29
|
+
static getParamIndexList(clazz, methodName) {
|
|
30
|
+
const paramMap = MetadataUtil.getMetaData(CONTROLLER_METHOD_PARAM_TYPE_MAP, clazz)?.get(methodName);
|
|
31
|
+
if (!paramMap) return [];
|
|
32
|
+
return Array.from(paramMap.keys());
|
|
33
|
+
}
|
|
34
|
+
static getHTTPMethodParamType(parameterIndex, clazz, methodName) {
|
|
35
|
+
return (MetadataUtil.getMetaData(CONTROLLER_METHOD_PARAM_TYPE_MAP, clazz)?.get(methodName))?.get(parameterIndex);
|
|
36
|
+
}
|
|
37
|
+
static setHTTPMethodParamName(paramName, parameterIndex, clazz, methodName) {
|
|
38
|
+
const methodParamNameMap = MetadataUtil.initOwnMapMetaData(CONTROLLER_METHOD_PARAM_NAME_MAP, clazz, /* @__PURE__ */ new Map());
|
|
39
|
+
MapUtil.getOrStore(methodParamNameMap, methodName, /* @__PURE__ */ new Map()).set(parameterIndex, paramName);
|
|
40
|
+
}
|
|
41
|
+
static getHTTPMethodParamName(parameterIndex, clazz, methodName) {
|
|
42
|
+
return (MetadataUtil.getMetaData(CONTROLLER_METHOD_PARAM_NAME_MAP, clazz)?.get(methodName))?.get(parameterIndex);
|
|
43
|
+
}
|
|
44
|
+
static getHTTPMethodPriority(clazz, methodName) {
|
|
45
|
+
return MetadataUtil.getMetaData(CONTROLLER_METHOD_PRIORITY, clazz)?.get(methodName);
|
|
46
|
+
}
|
|
47
|
+
static setHTTPMethodPriority(priority, clazz, methodName) {
|
|
48
|
+
MetadataUtil.initOwnMapMetaData(CONTROLLER_METHOD_PRIORITY, clazz, /* @__PURE__ */ new Map()).set(methodName, priority);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
//#endregion
|
|
53
|
+
export { HTTPInfoUtil };
|
|
@@ -1,20 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
1
|
+
//#region src/util/HTTPPriorityUtil.d.ts
|
|
2
|
+
declare class HTTPPriorityUtil {
|
|
3
|
+
static readonly DEFAULT_PRIORITY = 1e5;
|
|
4
|
+
private static readonly TOKEN_PRIORITY;
|
|
5
|
+
/**
|
|
6
|
+
* | Path | RegExp index | priority |
|
|
7
|
+
* | --- | --- | --- |
|
|
8
|
+
* | /* | [0] | 0 |
|
|
9
|
+
* | /hello/:name | [1] | 1000 |
|
|
10
|
+
* | /hello/world/message/:message | [3] | 3000 |
|
|
11
|
+
* | /hello/:name/message/:message | [1, 3] | 4000 |
|
|
12
|
+
* | /hello/world | [] | 100000/Infinity? |
|
|
13
|
+
*
|
|
14
|
+
* priority = hasRegExp
|
|
15
|
+
* : regexpIndex.reduce((p,c) => p + c * 1000, 0)
|
|
16
|
+
* : 100000;
|
|
17
|
+
* @param {string} path - path to calculate priority
|
|
18
|
+
* @returns {number} priority
|
|
19
|
+
*/
|
|
20
|
+
static calcPathPriority(path: string): number;
|
|
20
21
|
}
|
|
22
|
+
//#endregion
|
|
23
|
+
export { HTTPPriorityUtil };
|
|
@@ -1,43 +1,39 @@
|
|
|
1
|
-
import { parse } 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
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
return priority;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRUUFByaW9yaXR5VXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL0hUVFBQcmlvcml0eVV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZDLE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsTUFBTSxDQUFVLGdCQUFnQixHQUFHLE1BQU0sQ0FBQztJQUNsQyxNQUFNLENBQVUsY0FBYyxHQUFHLElBQUksQ0FBQztJQUU5Qzs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFZO1FBQ2xDLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDakIsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksS0FBSyxDQUFDO1FBQ1YsT0FBTyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2hDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQzlCLGdCQUFnQjtnQkFDaEIsa0NBQWtDO2dCQUNsQyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixTQUFTLEdBQUcsSUFBSSxDQUFDO2dCQUNqQixRQUFRLElBQUksS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUM1QyxDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNmLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQy9CLENBQUM7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDIn0=
|
|
1
|
+
import { parse } from "path-to-regexp";
|
|
2
|
+
|
|
3
|
+
//#region src/util/HTTPPriorityUtil.ts
|
|
4
|
+
var HTTPPriorityUtil = class {
|
|
5
|
+
static DEFAULT_PRIORITY = 1e5;
|
|
6
|
+
static TOKEN_PRIORITY = 1e3;
|
|
7
|
+
/**
|
|
8
|
+
* | Path | RegExp index | priority |
|
|
9
|
+
* | --- | --- | --- |
|
|
10
|
+
* | /* | [0] | 0 |
|
|
11
|
+
* | /hello/:name | [1] | 1000 |
|
|
12
|
+
* | /hello/world/message/:message | [3] | 3000 |
|
|
13
|
+
* | /hello/:name/message/:message | [1, 3] | 4000 |
|
|
14
|
+
* | /hello/world | [] | 100000/Infinity? |
|
|
15
|
+
*
|
|
16
|
+
* priority = hasRegExp
|
|
17
|
+
* : regexpIndex.reduce((p,c) => p + c * 1000, 0)
|
|
18
|
+
* : 100000;
|
|
19
|
+
* @param {string} path - path to calculate priority
|
|
20
|
+
* @returns {number} priority
|
|
21
|
+
*/
|
|
22
|
+
static calcPathPriority(path) {
|
|
23
|
+
const tokens = parse(path);
|
|
24
|
+
let priority = 0;
|
|
25
|
+
let hasRegExp = false;
|
|
26
|
+
let index = 0;
|
|
27
|
+
let token;
|
|
28
|
+
while (token = tokens.shift()) if (typeof token === "string") index += token.split("/").length - 1;
|
|
29
|
+
else {
|
|
30
|
+
hasRegExp = true;
|
|
31
|
+
priority += index++ * this.TOKEN_PRIORITY;
|
|
32
|
+
}
|
|
33
|
+
if (!hasRegExp) return this.DEFAULT_PRIORITY;
|
|
34
|
+
return priority;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
//#endregion
|
|
39
|
+
export { HTTPPriorityUtil };
|
|
@@ -1,20 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
1
|
+
import { ControllerTypeLike, EggProtoImplClass, IAdvice, MiddlewareFunc } from "@eggjs/tegg-types";
|
|
2
|
+
|
|
3
|
+
//#region src/util/MethodInfoUtil.d.ts
|
|
4
|
+
declare class MethodInfoUtil {
|
|
5
|
+
static setMethodControllerType(clazz: EggProtoImplClass, methodName: string, controllerType: ControllerTypeLike): void;
|
|
6
|
+
static getMethodControllerType(clazz: EggProtoImplClass, methodName: string): ControllerTypeLike | undefined;
|
|
7
|
+
static setMethodContextIndexInArgs(index: number, clazz: EggProtoImplClass, methodName: string): void;
|
|
8
|
+
static getMethodContextIndex(clazz: EggProtoImplClass, methodName: string): number | undefined;
|
|
9
|
+
static addMethodMiddleware(middleware: MiddlewareFunc, clazz: EggProtoImplClass, methodName: string): void;
|
|
10
|
+
static getMethodMiddlewares(clazz: EggProtoImplClass, methodName: string): MiddlewareFunc[];
|
|
11
|
+
static addMethodAopMiddleware(middleware: EggProtoImplClass<IAdvice>, clazz: EggProtoImplClass, methodName: string): void;
|
|
12
|
+
static getMethodAopMiddlewares(clazz: EggProtoImplClass, methodName: string): EggProtoImplClass<IAdvice>[];
|
|
13
|
+
static setMethodAcl(code: string | undefined, clazz: EggProtoImplClass, methodName: string): void;
|
|
14
|
+
static hasMethodAcl(clazz: EggProtoImplClass, methodName: string): boolean;
|
|
15
|
+
static getMethodAcl(clazz: EggProtoImplClass, methodName: string): string | undefined;
|
|
16
|
+
static setMethodHosts(hosts: string[], clazz: EggProtoImplClass, methodName: string): void;
|
|
17
|
+
static getMethodHosts(clazz: EggProtoImplClass, methodName: string): string[] | undefined;
|
|
18
|
+
static getMethods(clazz: EggProtoImplClass): string[];
|
|
19
|
+
static shouldRegisterAopMiddlewarePointCut(clazz: EggProtoImplClass, methodName: string): boolean;
|
|
20
|
+
static registerAopMiddlewarePointcut(clazz: EggProtoImplClass, methodName: string): void;
|
|
20
21
|
}
|
|
22
|
+
//#endregion
|
|
23
|
+
export { MethodInfoUtil };
|
|
@@ -1,72 +1,62 @@
|
|
|
1
|
-
import { MetadataUtil } from
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
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
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
static shouldRegisterAopMiddlewarePointCut(clazz, methodName) {
|
|
64
|
-
const methodControllerMap = MetadataUtil.getMetaData(METHOD_AOP_REGISTER_MAP, clazz);
|
|
65
|
-
return !(methodControllerMap && methodControllerMap.get(methodName));
|
|
66
|
-
}
|
|
67
|
-
static registerAopMiddlewarePointcut(clazz, methodName) {
|
|
68
|
-
const methodControllerMap = MetadataUtil.initOwnMapMetaData(METHOD_AOP_REGISTER_MAP, clazz, new Map());
|
|
69
|
-
methodControllerMap.set(methodName, true);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWV0aG9kSW5mb1V0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbC9NZXRob2RJbmZvVXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xELE9BQU8sRUFFTCxVQUFVLEVBQ1Ysc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2QixvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLDBCQUEwQixFQUMxQixrQkFBa0IsR0FDbkIsTUFBTSxtQkFBbUIsQ0FBQztBQVUzQixNQUFNLE9BQU8sY0FBYztJQUN6QixNQUFNLENBQUMsdUJBQXVCLENBQzVCLEtBQXdCLEVBQ3hCLFVBQWtCLEVBQ2xCLGNBQWtDO1FBRWxDLE1BQU0sbUJBQW1CLEdBQWUsWUFBWSxDQUFDLGtCQUFrQixDQUNyRSwwQkFBMEIsRUFDMUIsS0FBSyxFQUNMLElBQUksR0FBRyxFQUFFLENBQ1YsQ0FBQztRQUNGLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxLQUF3QixFQUFFLFVBQWtCO1FBQ3pFLE1BQU0sbUJBQW1CLEdBQTJCLFlBQVksQ0FBQyxXQUFXLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDaEgsT0FBTyxtQkFBbUIsRUFBRSxHQUFHLENBQUMsVUFBVSxDQUFtQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxNQUFNLENBQUMsMkJBQTJCLENBQUMsS0FBYSxFQUFFLEtBQXdCLEVBQUUsVUFBa0I7UUFDNUYsTUFBTSxxQkFBcUIsR0FBMEIsWUFBWSxDQUFDLGtCQUFrQixDQUNsRixvQkFBb0IsRUFDcEIsS0FBSyxFQUNMLElBQUksR0FBRyxFQUFFLENBQ1YsQ0FBQztRQUNGLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxLQUF3QixFQUFFLFVBQWtCO1FBQ3ZFLE1BQU0scUJBQXFCLEdBQXNDLFlBQVksQ0FBQyxXQUFXLENBQ3ZGLG9CQUFvQixFQUNwQixLQUFLLENBQ04sQ0FBQztRQUNGLE9BQU8scUJBQXFCLEVBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxNQUFNLENBQUMsbUJBQW1CLENBQUMsVUFBMEIsRUFBRSxLQUF3QixFQUFFLFVBQWtCO1FBQ2pHLE1BQU0sbUJBQW1CLEdBQXdCLFlBQVksQ0FBQyxrQkFBa0IsQ0FDOUUsa0JBQWtCLEVBQ2xCLEtBQUssRUFDTCxJQUFJLEdBQUcsRUFBRSxDQUNWLENBQUM7UUFDRixNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2xGLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsTUFBTSxDQUFDLG9CQUFvQixDQUFDLEtBQXdCLEVBQUUsVUFBa0I7UUFDdEUsTUFBTSxtQkFBbUIsR0FBb0MsWUFBWSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqSCxPQUFPLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxzQkFBc0IsQ0FDM0IsVUFBc0MsRUFDdEMsS0FBd0IsRUFDeEIsVUFBa0I7UUFFbEIsTUFBTSxtQkFBbUIsR0FBMkIsWUFBWSxDQUFDLGtCQUFrQixDQUNqRixzQkFBc0IsRUFDdEIsS0FBSyxFQUNMLElBQUksR0FBRyxFQUFFLENBQ1YsQ0FBQztRQUNGLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbEYsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxNQUFNLENBQUMsdUJBQXVCLENBQUMsS0FBd0IsRUFBRSxVQUFrQjtRQUN6RSxNQUFNLG1CQUFtQixHQUF1QyxZQUFZLENBQUMsV0FBVyxDQUN0RixzQkFBc0IsRUFDdEIsS0FBSyxDQUNOLENBQUM7UUFDRixPQUFPLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBd0IsRUFBRSxLQUF3QixFQUFFLFVBQWtCO1FBQ3hGLE1BQU0sWUFBWSxHQUFpQixZQUFZLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDakcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBd0IsRUFBRSxVQUFrQjtRQUM5RCxNQUFNLFlBQVksR0FBNkIsWUFBWSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDM0YsT0FBTyxDQUFDLENBQUMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUF3QixFQUFFLFVBQWtCO1FBQzlELE1BQU0sWUFBWSxHQUE2QixZQUFZLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRixPQUFPLFlBQVksRUFBRSxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZSxFQUFFLEtBQXdCLEVBQUUsVUFBa0I7UUFDakYsTUFBTSxtQkFBbUIsR0FBZSxZQUFZLENBQUMsa0JBQWtCLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNsSCxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQXdCLEVBQUUsVUFBa0I7UUFDaEUsTUFBTSxtQkFBbUIsR0FBMkIsWUFBWSxDQUFDLFdBQVcsQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RyxPQUFPLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQXlCLENBQUM7SUFDdEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBd0I7UUFDeEMsTUFBTSxtQkFBbUIsR0FBMkIsWUFBWSxDQUFDLFdBQVcsQ0FBQywwQkFBMEIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNoSCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELE1BQU0sQ0FBQyxtQ0FBbUMsQ0FBQyxLQUF3QixFQUFFLFVBQWtCO1FBQ3JGLE1BQU0sbUJBQW1CLEdBQXFDLFlBQVksQ0FBQyxXQUFXLENBQ3BGLHVCQUF1QixFQUN2QixLQUFLLENBQ04sQ0FBQztRQUNGLE9BQU8sQ0FBQyxDQUFDLG1CQUFtQixJQUFJLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxNQUFNLENBQUMsNkJBQTZCLENBQUMsS0FBd0IsRUFBRSxVQUFrQjtRQUMvRSxNQUFNLG1CQUFtQixHQUF5QixZQUFZLENBQUMsa0JBQWtCLENBQy9FLHVCQUF1QixFQUN2QixLQUFLLEVBQ0wsSUFBSSxHQUFHLEVBQUUsQ0FDVixDQUFDO1FBQ0YsbUJBQW1CLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QyxDQUFDO0NBQ0YifQ==
|
|
1
|
+
import { MetadataUtil } from "@eggjs/core-decorator";
|
|
2
|
+
import { METHOD_ACL, METHOD_AOP_MIDDLEWARES, METHOD_AOP_REGISTER_MAP, METHOD_CONTEXT_INDEX, METHOD_CONTROLLER_HOST, METHOD_CONTROLLER_TYPE_MAP, METHOD_MIDDLEWARES } from "@eggjs/tegg-types";
|
|
3
|
+
import { MapUtil } from "@eggjs/tegg-common-util";
|
|
4
|
+
|
|
5
|
+
//#region src/util/MethodInfoUtil.ts
|
|
6
|
+
var MethodInfoUtil = class {
|
|
7
|
+
static setMethodControllerType(clazz, methodName, controllerType) {
|
|
8
|
+
MetadataUtil.initOwnMapMetaData(METHOD_CONTROLLER_TYPE_MAP, clazz, /* @__PURE__ */ new Map()).set(methodName, controllerType);
|
|
9
|
+
}
|
|
10
|
+
static getMethodControllerType(clazz, methodName) {
|
|
11
|
+
return MetadataUtil.getMetaData(METHOD_CONTROLLER_TYPE_MAP, clazz)?.get(methodName);
|
|
12
|
+
}
|
|
13
|
+
static setMethodContextIndexInArgs(index, clazz, methodName) {
|
|
14
|
+
MetadataUtil.initOwnMapMetaData(METHOD_CONTEXT_INDEX, clazz, /* @__PURE__ */ new Map()).set(methodName, index);
|
|
15
|
+
}
|
|
16
|
+
static getMethodContextIndex(clazz, methodName) {
|
|
17
|
+
return MetadataUtil.getMetaData(METHOD_CONTEXT_INDEX, clazz)?.get(methodName);
|
|
18
|
+
}
|
|
19
|
+
static addMethodMiddleware(middleware, clazz, methodName) {
|
|
20
|
+
const methodMiddlewareMap = MetadataUtil.initOwnMapMetaData(METHOD_MIDDLEWARES, clazz, /* @__PURE__ */ new Map());
|
|
21
|
+
MapUtil.getOrStore(methodMiddlewareMap, methodName, []).push(middleware);
|
|
22
|
+
}
|
|
23
|
+
static getMethodMiddlewares(clazz, methodName) {
|
|
24
|
+
return MetadataUtil.getMetaData(METHOD_MIDDLEWARES, clazz)?.get(methodName) || [];
|
|
25
|
+
}
|
|
26
|
+
static addMethodAopMiddleware(middleware, clazz, methodName) {
|
|
27
|
+
const methodMiddlewareMap = MetadataUtil.initOwnMapMetaData(METHOD_AOP_MIDDLEWARES, clazz, /* @__PURE__ */ new Map());
|
|
28
|
+
MapUtil.getOrStore(methodMiddlewareMap, methodName, []).push(middleware);
|
|
29
|
+
}
|
|
30
|
+
static getMethodAopMiddlewares(clazz, methodName) {
|
|
31
|
+
return MetadataUtil.getMetaData(METHOD_AOP_MIDDLEWARES, clazz)?.get(methodName) || [];
|
|
32
|
+
}
|
|
33
|
+
static setMethodAcl(code, clazz, methodName) {
|
|
34
|
+
MetadataUtil.initOwnMapMetaData(METHOD_ACL, clazz, /* @__PURE__ */ new Map()).set(methodName, code);
|
|
35
|
+
}
|
|
36
|
+
static hasMethodAcl(clazz, methodName) {
|
|
37
|
+
return !!MetadataUtil.getMetaData(METHOD_ACL, clazz)?.has(methodName);
|
|
38
|
+
}
|
|
39
|
+
static getMethodAcl(clazz, methodName) {
|
|
40
|
+
return MetadataUtil.getMetaData(METHOD_ACL, clazz)?.get(methodName);
|
|
41
|
+
}
|
|
42
|
+
static setMethodHosts(hosts, clazz, methodName) {
|
|
43
|
+
MetadataUtil.initOwnMapMetaData(METHOD_CONTROLLER_HOST, clazz, /* @__PURE__ */ new Map()).set(methodName, hosts);
|
|
44
|
+
}
|
|
45
|
+
static getMethodHosts(clazz, methodName) {
|
|
46
|
+
return MetadataUtil.getMetaData(METHOD_CONTROLLER_HOST, clazz)?.get(methodName);
|
|
47
|
+
}
|
|
48
|
+
static getMethods(clazz) {
|
|
49
|
+
const methodControllerMap = MetadataUtil.getMetaData(METHOD_CONTROLLER_TYPE_MAP, clazz);
|
|
50
|
+
return Array.from(methodControllerMap?.keys() || []);
|
|
51
|
+
}
|
|
52
|
+
static shouldRegisterAopMiddlewarePointCut(clazz, methodName) {
|
|
53
|
+
const methodControllerMap = MetadataUtil.getMetaData(METHOD_AOP_REGISTER_MAP, clazz);
|
|
54
|
+
return !(methodControllerMap && methodControllerMap.get(methodName));
|
|
55
|
+
}
|
|
56
|
+
static registerAopMiddlewarePointcut(clazz, methodName) {
|
|
57
|
+
MetadataUtil.initOwnMapMetaData(METHOD_AOP_REGISTER_MAP, clazz, /* @__PURE__ */ new Map()).set(methodName, true);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
//#endregion
|
|
62
|
+
export { MethodInfoUtil };
|
package/dist/util/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { ControllerValidator } from "./validator/ControllerValidator.js";
|
|
2
|
+
import { MethodValidator } from "./validator/MethodValidator.js";
|
|
3
|
+
import "./validator/index.js";
|
|
4
|
+
import { ControllerInfoUtil } from "./ControllerInfoUtil.js";
|
|
5
|
+
import { ControllerMetadataUtil } from "./ControllerMetadataUtil.js";
|
|
6
|
+
import { HTTPInfoUtil } from "./HTTPInfoUtil.js";
|
|
7
|
+
import { HTTPPriorityUtil } from "./HTTPPriorityUtil.js";
|
|
8
|
+
import { MethodInfoUtil } from "./MethodInfoUtil.js";
|
package/dist/util/index.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { ControllerInfoUtil } from "./ControllerInfoUtil.js";
|
|
2
|
+
import { ControllerValidator } from "./validator/ControllerValidator.js";
|
|
3
|
+
import { MethodInfoUtil } from "./MethodInfoUtil.js";
|
|
4
|
+
import { MethodValidator } from "./validator/MethodValidator.js";
|
|
5
|
+
import "./validator/index.js";
|
|
6
|
+
import { ControllerMetadataUtil } from "./ControllerMetadataUtil.js";
|
|
7
|
+
import { HTTPInfoUtil } from "./HTTPInfoUtil.js";
|
|
8
|
+
import { HTTPPriorityUtil } from "./HTTPPriorityUtil.js";
|
|
9
|
+
|
|
10
|
+
export { };
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { EggProtoImplClass } from "@eggjs/tegg-types";
|
|
2
|
+
|
|
3
|
+
//#region src/util/validator/ControllerValidator.d.ts
|
|
4
|
+
declare class ControllerValidator {
|
|
5
|
+
static validate(clazz: EggProtoImplClass): void;
|
|
4
6
|
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { ControllerValidator };
|