using PostFundManagement.Domain.Abstractions; using PostFundManagement.Domain.Api; using PostFundManagement.Domain.Extensions; using PostFundManagement.Infrastructure.Database; namespace PostFundManagement.Api.Endpoints.Users; [ApiVersionTarget(1)] public class GetUsersEndpoint : IEndpoint { public void Map(IEndpointRouteBuilder builder) { builder.MapGet("api/users", (IDbContextFactory contextFactory) => { throw new NotImplementedException(); }) .RequireAuthorization() .WithDescription("Paginated, searchable directory of system users. Supports filtering by ActivityStatus, searching by Email, and sorting") .WithName(typeof(GetUsersEndpoint).ToEndpointName()) .MapToApiVersion(new ApiVersion(1)) .Produces(StatusCodes.Status200OK) .Produces(StatusCodes.Status400BadRequest) .Produces(StatusCodes.Status401Unauthorized) .WithTags(EndpointTags.Users); } }