Implement step 17 modules: threads/messages, notifications with automation (submission.created, idea.created, grant_call.opened), innovation test feedback, admin panel (submissions, verify, metrics, grant call status), Middleman adaptation and partnerships. Split multi-type files into one type per file and replace object-valued dictionaries with string-valued maps in data contracts (migrations 0006/0007).
18 lines
523 B
C#
18 lines
523 B
C#
using Dahomey.Cbor.Attributes;
|
|
|
|
namespace TarninaHub.Infrastructure.Persistence;
|
|
|
|
|
|
internal sealed class NotificationRow
|
|
{
|
|
[CborProperty("id")] public string Id { get; set; } = string.Empty;
|
|
|
|
[CborProperty("type")] public string Type { get; set; } = string.Empty;
|
|
|
|
[CborProperty("payload")] public Dictionary<string, string?> Payload { get; set; } = [];
|
|
|
|
[CborProperty("read_at")] public DateTimeOffset? ReadAt { get; set; }
|
|
|
|
[CborProperty("created_at")] public DateTimeOffset CreatedAt { get; set; }
|
|
}
|