using File.Application.Features.Folders.DTOs;
using File.Application.Features.Folders.Queries;
using MediatR;
namespace BuildFlow.Host.Endpoints.File.Folders;
///
/// 查询根级文件端点。GET /api/files/root,
/// 返回当前用户 FolderId=null 的所有 FileMeta,使根目录与子文件夹共享同一数据源(DB)。
/// 注意:路径用 /files/root 而非 /folders/root/files,避免与 POST /folders/{FolderId}/files 模板冲突。
///
[Authorize]
public class GetRootFilesEndpoint(IMediator mediator) : Endpoint>
{
public override void Configure()
{
Get("/files/root");
}
public override async Task HandleAsync(EmptyRequest req, CancellationToken ct)
{
var result = await mediator.Send(new GetRootFilesQuery(), ct);
await Send.OkAsync(result, ct);
}
}