using Microsoft.AspNetCore.Mvc; using SVSim.Database.Services.Guild; using SVSim.EmulatedEntrypoint.Models.Dtos.Common; using SVSim.EmulatedEntrypoint.Models.Dtos.GuildChat; using SVSim.EmulatedEntrypoint.Models.Dtos.Requests; namespace SVSim.EmulatedEntrypoint.Controllers; /// /guild_chat/* — 7 endpoints. See docs/api-spec/endpoints/post-login/guild_chat-*.md. [Route("guild_chat")] public sealed class GuildChatController : SVSimController { private readonly IGuildChatService _chat; public GuildChatController(IGuildChatService chat) => _chat = chat; [HttpPost("messages")] public Task> Messages([FromBody] GuildChatMessagesRequest req, CancellationToken ct) => Task.FromResult>(new GuildChatMessagesResponse { MaintenanceCardList = new(), Users = new(), ChatMessage = new(), WaitInterval = 10, }); [HttpPost("post")] public Task> Post([FromBody] GuildChatPostRequest req, CancellationToken ct) => Task.FromResult>(new GuildChatPostResponse()); [HttpPost("add_deck")] public Task> AddDeck([FromBody] GuildChatAddDeckRequest req, CancellationToken ct) => Task.FromResult>(new EmptyResponse()); [HttpPost("delete_deck")] public Task> DeleteDeck([FromBody] GuildChatDeleteDeckRequest req, CancellationToken ct) => Task.FromResult>(new EmptyResponse()); [HttpPost("add_replay")] public Task> AddReplay([FromBody] GuildChatAddReplayRequest req, CancellationToken ct) => Task.FromResult>(new EmptyResponse()); [HttpPost("replay_detail")] public Task> ReplayDetail([FromBody] GuildChatReplayDetailRequest req, CancellationToken ct) => Task.FromResult>(new GuildChatReplayDetailResponse()); [HttpPost("deck_log")] public Task> DeckLog([FromBody] GuildChatDeckLogRequest req, CancellationToken ct) => Task.FromResult>(new GuildChatDeckLogResponse()); }