UNPKG

@eggjs/controller-decorator

Version:

tegg controller decorator

42 lines 3.84 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.MCPControllerToolMetaBuilder = void 0; const model_1 = require("../../model"); const MethodValidator_1 = require("../../util/validator/MethodValidator"); const MethodInfoUtil_1 = __importDefault(require("../../util/MethodInfoUtil")); const MCPInfoUtil_1 = require("../../util/MCPInfoUtil"); class MCPControllerToolMetaBuilder { constructor(clazz, methodName) { this.clazz = clazz; this.methodName = methodName; } build() { MethodValidator_1.MethodValidator.validate(this.clazz, this.methodName); const controllerType = MethodInfoUtil_1.default.getMethodControllerType(this.clazz, this.methodName); if (!controllerType) { return undefined; } const middlewares = MethodInfoUtil_1.default.getMethodMiddlewares(this.clazz, this.methodName); const needAcl = MethodInfoUtil_1.default.hasMethodAcl(this.clazz, this.methodName); const aclCode = MethodInfoUtil_1.default.getMethodAcl(this.clazz, this.methodName); const params = MCPInfoUtil_1.MCPInfoUtil.getMCPToolParams(this.clazz, this.methodName); const detail = MCPInfoUtil_1.MCPInfoUtil.getMCPToolArgsIndex(this.clazz, this.methodName); const extra = MCPInfoUtil_1.MCPInfoUtil.getMCPExtra(this.clazz, this.methodName); const contextParamIndex = MethodInfoUtil_1.default.getMethodContextIndex(this.clazz, this.methodName); return new model_1.MCPToolMeta({ name: this.methodName, middlewares, contextParamIndex, needAcl, aclCode, detail, extra, ...params, }); } } exports.MCPControllerToolMetaBuilder = MCPControllerToolMetaBuilder; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTUNQQ29udHJvbGxlclRvb2xNZXRhQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsL21jcC9NQ1BDb250cm9sbGVyVG9vbE1ldGFCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLHVDQUEwQztBQUMxQywwRUFBdUU7QUFDdkUsK0VBQXVEO0FBQ3ZELHdEQUFxRDtBQUVyRCxNQUFhLDRCQUE0QjtJQUl2QyxZQUFZLEtBQXdCLEVBQUUsVUFBa0I7UUFDdEQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVELEtBQUs7UUFDSCxpQ0FBZSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN0RCxNQUFNLGNBQWMsR0FBRyx3QkFBYyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzNGLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNwQixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBQ0QsTUFBTSxXQUFXLEdBQUcsd0JBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyRixNQUFNLE9BQU8sR0FBRyx3QkFBYyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6RSxNQUFNLE9BQU8sR0FBRyx3QkFBYyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6RSxNQUFNLE1BQU0sR0FBRyx5QkFBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sTUFBTSxHQUFHLHlCQUFXLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUUsTUFBTSxLQUFLLEdBQUcseUJBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkUsTUFBTSxpQkFBaUIsR0FBRyx3QkFBYyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRTVGLE9BQU8sSUFBSSxtQkFBVyxDQUFDO1lBQ3JCLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVTtZQUNyQixXQUFXO1lBQ1gsaUJBQWlCO1lBQ2pCLE9BQU87WUFDUCxPQUFPO1lBQ1AsTUFBTTtZQUNOLEtBQUs7WUFDTCxHQUFHLE1BQU07U0FDVixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFsQ0Qsb0VBa0NDIn0=