using Application.Abstractions.Messaging; using Domain.Entities.Stocks.ValueObject; using Web.Api.Common; namespace Web.Api.Endpoints.Stocks; /// 종목 목록 — 시장/검색어 필터 + 페이징 (익명 열람) internal sealed class List : IEndpoint { public void MapEndpoint(IEndpointRouteBuilder app) { app.MapGet("api/stocks", async ( ISender sender, string? q = null, StockMarket? market = null, int page = 1, ushort perPage = 20, CancellationToken ct = default ) => { var result = await sender.Send(new Application.Features.Api.Stocks.GetList.Query(q, market, page, perPage), ct); return ApiResponse.Ok(result); }) .WithTags("Stocks") .AllowAnonymous(); } }