| | | 1 | | using ArturRios.Mediator.Command; |
| | | 2 | | |
| | | 3 | | namespace ArturRios.Heimdall.Command.Output; |
| | | 4 | | |
| | | 5 | | /// <summary> |
| | | 6 | | /// The person created by any UC-06 path. Exposes only external-facing identifiers; never |
| | | 7 | | /// <c>PasswordHash</c> / <c>Salt</c>. <see cref="ScopeId" /> is populated for paths a and c and |
| | | 8 | | /// <c>null</c> for path b (admins have no scope association at creation). |
| | | 9 | | /// </summary> |
| | | 10 | | public class CreatePersonCommandOutput : CommandOutput |
| | | 11 | | { |
| | | 12 | | /// <summary>Public identifier of the created person.</summary> |
| | 50 | 13 | | public Guid Id { get; set; } |
| | | 14 | | |
| | | 15 | | /// <summary>Full name.</summary> |
| | 68 | 16 | | public string Name { get; set; } = string.Empty; |
| | | 17 | | |
| | | 18 | | /// <summary>Email address.</summary> |
| | 69 | 19 | | public string Email { get; set; } = string.Empty; |
| | | 20 | | |
| | | 21 | | /// <summary>Assigned role value (see <c>Roles</c>).</summary> |
| | 45 | 22 | | public int Role { get; set; } |
| | | 23 | | |
| | | 24 | | /// <summary>Whether the email is verified (always <c>false</c> at creation).</summary> |
| | 39 | 25 | | public bool EmailVerified { get; set; } |
| | | 26 | | |
| | | 27 | | /// <summary>Public identifier of the associated scope (paths a and c); <c>null</c> for path b.</summary> |
| | 39 | 28 | | public Guid? ScopeId { get; set; } |
| | | 29 | | |
| | | 30 | | /// <summary>Creation timestamp.</summary> |
| | 39 | 31 | | public DateTime CreatedAt { get; set; } |
| | | 32 | | } |