2026-10-05 01:23:18 +02:00
|
|
|
namespace decePubClient.Models;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
2026-10-05 15:19:07 +02:00
|
|
|
/// The personas already told that an act of theirs is public (owner decision, PrivaPub's ROADMAP: each persona is told
|
2026-10-18 09:50:46 +02:00
|
|
|
/// once, before its first one): reactions and poll votes, and joining an event; and whether this device was told, before
|
|
|
|
|
/// its first Web Push subscription, what the browser's push service learns. Kept in localStorage under its type name.
|
2026-10-05 01:23:18 +02:00
|
|
|
/// </summary>
|
|
|
|
|
public class PublicActionNotices
|
|
|
|
|
{
|
2026-10-05 15:19:07 +02:00
|
|
|
/// <summary>Told about reactions and poll votes.</summary>
|
2026-10-05 01:23:18 +02:00
|
|
|
public List<string> PersonaIds { get; set; } = [];
|
2026-10-05 15:19:07 +02:00
|
|
|
/// <summary>Told about joining events.</summary>
|
|
|
|
|
public List<string> EventPersonaIds { get; set; } = [];
|
2026-10-18 09:50:46 +02:00
|
|
|
/// <summary>This device was told about Web Push (once for the device, whichever personas it subscribes).</summary>
|
|
|
|
|
public bool PushTold { get; set; }
|
2026-10-05 15:19:07 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public enum PublicAct
|
|
|
|
|
{
|
|
|
|
|
Reaction = 0,
|
2026-10-18 09:50:46 +02:00
|
|
|
Participation = 1,
|
|
|
|
|
/// <summary>Notifications on this device go through the browser's push service, which learns when they arrive.</summary>
|
|
|
|
|
Push = 2
|
2026-10-05 01:23:18 +02:00
|
|
|
}
|