using MediatR; using Scripting.Application.Commands; using Scripting.Application.DTOs; namespace BuildFlow.Host.Endpoints.Scripting; /// 发布脚本端点。POST /scripts/{id}/publish。需 scripts.publish 权限。 public class PublishScriptEndpoint(IMediator mediator) : Endpoint { public override void Configure() { Post("/scripts/{id}/publish"); Permissions("scripts.publish"); } public override async Task HandleAsync(PublishScriptRequest req, CancellationToken ct) { var result = await mediator.Send(new PublishScriptCommand(req.Id), ct); await Send.OkAsync(result, ct); } }