c0c8f852d2
PR Checks / test-and-build (pull_request) Successful in 3m49s
- SessionBatchDto: добавлено поле JoinLink - SessionViewItem: добавлено поле JoinLink - SessionBatchViewBuilder: прокидывание JoinLink из DTO в ViewModel - CreateSessionHandler, SessionService: обновлены все вызовы конструктора - TelegramSessionBatchRenderer (Bot + Web): рендеринг ссылки в карточке - Добавлены тесты на наличие ссылки в рендере - Все 7 SQL-запросов, загружающих SessionBatchDto, обновлены с join_link AS JoinLink - Бамп версии до 1.11.0 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
29 lines
728 B
C#
29 lines
728 B
C#
using GmRelay.Shared.Domain;
|
|
|
|
namespace GmRelay.Shared.Rendering;
|
|
|
|
public sealed record SessionBatchViewModel(
|
|
string Title,
|
|
IReadOnlyList<SessionViewItem> Sessions);
|
|
|
|
public sealed record SessionViewItem(
|
|
Guid SessionId,
|
|
DateTime ScheduledAt,
|
|
string Status,
|
|
int? MaxPlayers,
|
|
string JoinLink,
|
|
int ActivePlayerCount,
|
|
IReadOnlyList<PlayerViewItem> ActivePlayers,
|
|
IReadOnlyList<PlayerViewItem> WaitlistedPlayers,
|
|
IReadOnlyList<AvailableAction> AvailableActions);
|
|
|
|
public sealed record PlayerViewItem(
|
|
string DisplayName,
|
|
string? TelegramUsername,
|
|
string RegistrationStatus);
|
|
|
|
public sealed record AvailableAction(
|
|
string ActionKey,
|
|
string Label,
|
|
Guid SessionId);
|