42 lines
2.2 KiB
C#
42 lines
2.2 KiB
C#
using GameList.Domain;
|
|
|
|
namespace GameList.Contracts;
|
|
|
|
public record SuggestionCreatedResponse(int Id);
|
|
|
|
public record SuggestionUpdatedResponse(int Id, string Name, string? Genre, string? Description, string? ScreenshotUrl, string? YoutubeUrl, string? GameUrl, int? MinPlayers, int? MaxPlayers);
|
|
|
|
public record VoteUpsertResponse(IReadOnlyList<int> SuggestionIds, int Score);
|
|
|
|
public record VoteFinalizeResponse(bool VotesFinal);
|
|
|
|
public record AdminResultsStateResponse(bool ResultsOpen, DateTimeOffset UpdatedAt);
|
|
|
|
public record AdminGrantJokerResponse(Guid Id, bool HasJoker);
|
|
|
|
public record AdminSetPlayerPhaseResponse(Guid PlayerId, Phase CurrentPhase, bool VotesFinal);
|
|
|
|
public record AdminSetPlayerAdminResponse(Guid PlayerId, bool IsAdmin);
|
|
|
|
public record AdminDeletePlayerResponse(Guid DeletedPlayerId);
|
|
|
|
public record AdminLinkSuggestionsResponse(int RootId, IReadOnlyList<int> LinkedSuggestionIds, int UnfinalizedPlayers);
|
|
|
|
public record AdminUnlinkSuggestionsResponse(IReadOnlyList<int> UnlinkedSuggestionIds, int UnfinalizedPlayers);
|
|
|
|
public record AdminResetStateResponse(Phase Phase, bool ResultsOpen, DateTimeOffset UpdatedAt);
|
|
|
|
public record VoteStatusResponse(IReadOnlyList<VoteStatusDto> Voters, bool Ready, IReadOnlyList<string> Waiting);
|
|
|
|
public record ResultItemDto(int Id, string Name, string? Author, int? MinPlayers, int? MaxPlayers, int Total, int Count, double Average, IReadOnlyList<int> Votes, IReadOnlyList<string> VoterNames, int? MyVote, string? ScreenshotUrl, string? YoutubeUrl, string? GameUrl, string? Description, string? Genre, int? ParentSuggestionId, IReadOnlyList<int> LinkedIds, IReadOnlyList<string> LinkedTitles);
|
|
|
|
public record AuthSessionResponse(Guid Id, string Username, string? DisplayName, bool IsAdmin);
|
|
|
|
public record AuthOptionsResponse(bool OwnerExists);
|
|
|
|
public record StateSummaryResponse(Guid Id, string Username, string? DisplayName, bool IsAdmin, bool IsOwner, Phase CurrentPhase, bool VotesFinal, bool HasJoker, bool ResultsOpen, DateTimeOffset UpdatedAt, int Players, int Suggestions, int Votes);
|
|
|
|
public record MeResponse(Guid Id, string Username, string? DisplayName, bool IsAdmin, bool IsOwner, Phase CurrentPhase, bool VotesFinal, bool HasJoker);
|
|
|
|
public record PhaseTransitionResponse(Phase CurrentPhase, bool ResultsOpen);
|