using TeleWave.Application.Common.Models;

namespace TeleWave.Application.Admin.Roles;

public static class RoleErrors
{
    public static readonly Error NotFound = Error.NotFound("Roles.NotFound", "Роль не найдена.");

    public static readonly Error DuplicateName = Error.Conflict(
        "Roles.DuplicateName",
        "Роль с таким именем уже существует."
    );

    public static readonly Error CannotModifySystemRole = Error.Forbidden(
        "Roles.CannotModifySystemRole",
        "Системную роль нельзя переименовать или удалить."
    );

    public static readonly Error RoleInUse = Error.Conflict(
        "Roles.RoleInUse",
        "Роль назначена пользователям — сначала смените им роль."
    );

    public static readonly Error CannotRemoveLastAdmin = Error.Conflict(
        "Roles.CannotRemoveLastAdmin",
        "Нельзя снять роль admin с последнего администратора."
    );
}
