35 lines
1.5 KiB
C#
35 lines
1.5 KiB
C#
using RpgRoller.Components.Pages.HomeControls;
|
|
|
|
namespace RpgRoller.Components.Pages;
|
|
|
|
public sealed class WorkspacePageContext(
|
|
WorkspaceState state,
|
|
WorkspacePlayCoordinator play,
|
|
WorkspaceCampaignCoordinator campaigns,
|
|
WorkspaceAdminCoordinator admin,
|
|
WorkspaceCampaignScopeCoordinator scope,
|
|
WorkspaceSessionCoordinator session,
|
|
Func<Task> initializeRouteAsync,
|
|
bool hasSessionInitialized,
|
|
Func<Task> requestRefreshAsync,
|
|
string adminDatabaseDownloadUrl,
|
|
IReadOnlyList<AppHeaderMenuItem> headerMenuItems,
|
|
bool isPlayRoute,
|
|
bool isCampaignsRoute,
|
|
bool isAdminRoute)
|
|
{
|
|
public WorkspaceState State { get; } = state;
|
|
public WorkspacePlayCoordinator Play { get; } = play;
|
|
public WorkspaceCampaignCoordinator Campaigns { get; } = campaigns;
|
|
public WorkspaceAdminCoordinator Admin { get; } = admin;
|
|
public WorkspaceCampaignScopeCoordinator Scope { get; } = scope;
|
|
public WorkspaceSessionCoordinator Session { get; } = session;
|
|
public Func<Task> InitializeRouteAsync { get; } = initializeRouteAsync;
|
|
public bool HasSessionInitialized { get; } = hasSessionInitialized;
|
|
public Func<Task> RequestRefreshAsync { get; } = requestRefreshAsync;
|
|
public string AdminDatabaseDownloadUrl { get; } = adminDatabaseDownloadUrl;
|
|
public IReadOnlyList<AppHeaderMenuItem> HeaderMenuItems { get; } = headerMenuItems;
|
|
public bool IsPlayRoute { get; } = isPlayRoute;
|
|
public bool IsCampaignsRoute { get; } = isCampaignsRoute;
|
|
public bool IsAdminRoute { get; } = isAdminRoute;
|
|
} |