KoogleApp/src/Koogle.Web/Store/PersonState/PersonActions.cs

74 lines
1.9 KiB
C#

using Koogle.Application.DTOs;
namespace Koogle.Web.Store.PersonState;
/// <summary>
/// Action to load all persons for the current club.
/// </summary>
public record LoadPersonsAction;
/// <summary>
/// Action dispatched when persons are loaded successfully.
/// </summary>
public record LoadPersonsSuccessAction(IReadOnlyList<PersonDto> Persons);
/// <summary>
/// Action dispatched when loading persons fails.
/// </summary>
public record LoadPersonsFailureAction(string Error);
/// <summary>
/// Action to create a new person.
/// </summary>
public record CreatePersonAction(CreatePersonDto Dto);
/// <summary>
/// Action dispatched when person is created successfully.
/// </summary>
public record CreatePersonSuccessAction(PersonDto Person);
/// <summary>
/// Action dispatched when creating person fails.
/// </summary>
public record CreatePersonFailureAction(string Error);
/// <summary>
/// Action to update an existing person.
/// </summary>
public record UpdatePersonAction(UpdatePersonDto Dto);
/// <summary>
/// Action dispatched when person is updated successfully.
/// </summary>
public record UpdatePersonSuccessAction(PersonDto Person);
/// <summary>
/// Action dispatched when updating person fails.
/// </summary>
public record UpdatePersonFailureAction(string Error);
/// <summary>
/// Action to delete a person.
/// </summary>
public record DeletePersonAction(Guid Id);
/// <summary>
/// Action dispatched when person is deleted successfully.
/// </summary>
public record DeletePersonSuccessAction(Guid Id);
/// <summary>
/// Action dispatched when deleting person fails.
/// </summary>
public record DeletePersonFailureAction(string Error);
/// <summary>
/// Action to select a person for editing.
/// </summary>
public record SelectPersonAction(PersonDto? Person);
/// <summary>
/// Action to clear person error state.
/// </summary>
public record ClearPersonErrorAction;