namespace GmRelay.Shared.Features.Sessions.CreateSession.Wizard;

/// <summary>
/// Symbolic step identifiers used by <see cref="WizardDraft.Step"/> and
/// the <see cref="WizardCallbackData"/> payload. Strings (rather than an
/// enum) so that future platforms can extend the set without breaking
/// the wire format stored in PostgreSQL.
/// </summary>
public static class WizardStepNames
{
    public const string Type = "Type";
    public const string Title = "Title";
    public const string Description = "Description";
    public const string Cover = "Cover";
    public const string System = "System";
    public const string Duration = "Duration";
    public const string DateTime = "DateTime";
    public const string Capacity = "Capacity";
    public const string Visibility = "Visibility";
    public const string PickClub = "PickClub";
    public const string Publish = "Publish";
    public const string Confirm = "Confirm";

    // Pool steps
    public const string PoolSystemDuration = "PoolSystemDuration";
    public const string PoolAddSlots = "PoolAddSlots";
    public const string PoolSlotDateTime = "PoolSlotDateTime";
    public const string PoolSlotCapacity = "PoolSlotCapacity";
    public const string PoolConfirm = "PoolConfirm";
}
