24 lines
845 B
C#
24 lines
845 B
C#
using SurrealDb.Net.Models;
|
|
|
|
namespace RelayServer.Models;
|
|
|
|
/// <summary>
|
|
/// Surreal record for the `server_members` table. Membership list.
|
|
/// Drives DeliverToServerMembers (the fan-out target list for every chat message) and the
|
|
/// authoritative ownership flag for PermissionService.
|
|
/// </summary>
|
|
public class ServerMembers : Record
|
|
{
|
|
/// <summary>"users:keeper317" — references the Core users table by name convention.</summary>
|
|
public required string UserId { get; set; }
|
|
|
|
/// <summary>When the user was added to this server.</summary>
|
|
public required DateTime JoinedAt { get; set; }
|
|
|
|
/// <summary>
|
|
/// Authoritative owner flag. Owner gets unconditional Administrator via
|
|
/// PermissionService.IsServerOwnerAsync, independent of role assignments.
|
|
/// </summary>
|
|
public bool IsOwner { get; set; }
|
|
}
|