Compare commits

..

3 Commits

7 changed files with 54 additions and 34 deletions

View File

@@ -0,0 +1,9 @@
namespace MareSynchronos.API.Data.Enum;
public enum TypingScope
{
Unknown = 0,
Proximity = 1, // Parler/Crier/Hurler
Party = 2,
CrossParty = 3
}

View File

@@ -1,19 +1,21 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using MessagePack;
namespace MareSynchronos.API.Dto.McdfShare; namespace MareSynchronos.API.Dto.McdfShare;
[MessagePackObject]
public class McdfShareEntryDto public class McdfShareEntryDto
{ {
public Guid Id { get; set; } [Key(0)] public Guid Id { get; set; }
public string Description { get; set; } = string.Empty; [Key(1)] public string Description { get; set; } = string.Empty;
public DateTime CreatedUtc { get; set; } [Key(2)] public DateTime CreatedUtc { get; set; }
public DateTime? UpdatedUtc { get; set; } [Key(3)] public DateTime? UpdatedUtc { get; set; }
public DateTime? ExpiresAtUtc { get; set; } [Key(4)] public DateTime? ExpiresAtUtc { get; set; }
public bool IsOwner { get; set; } [Key(5)] public bool IsOwner { get; set; }
public string OwnerUid { get; set; } = string.Empty; [Key(6)] public string OwnerUid { get; set; } = string.Empty;
public string OwnerAlias { get; set; } = string.Empty; [Key(7)] public string OwnerAlias { get; set; } = string.Empty;
public int DownloadCount { get; set; } [Key(8)] public int DownloadCount { get; set; }
public List<string> AllowedIndividuals { get; set; } = []; [Key(9)] public List<string> AllowedIndividuals { get; set; } = [];
public List<string> AllowedSyncshells { get; set; } = []; [Key(10)] public List<string> AllowedSyncshells { get; set; } = [];
} }

View File

@@ -1,15 +1,17 @@
using System; using System;
using MessagePack;
namespace MareSynchronos.API.Dto.McdfShare; namespace MareSynchronos.API.Dto.McdfShare;
[MessagePackObject]
public class McdfSharePayloadDto public class McdfSharePayloadDto
{ {
public Guid ShareId { get; set; } [Key(0)] public Guid ShareId { get; set; }
public string Description { get; set; } = string.Empty; [Key(1)] public string Description { get; set; } = string.Empty;
public byte[] CipherData { get; set; } = Array.Empty<byte>(); [Key(2)] public byte[] CipherData { get; set; } = Array.Empty<byte>();
public byte[] Nonce { get; set; } = Array.Empty<byte>(); [Key(3)] public byte[] Nonce { get; set; } = Array.Empty<byte>();
public byte[] Salt { get; set; } = Array.Empty<byte>(); [Key(4)] public byte[] Salt { get; set; } = Array.Empty<byte>();
public byte[] Tag { get; set; } = Array.Empty<byte>(); [Key(5)] public byte[] Tag { get; set; } = Array.Empty<byte>();
public DateTime CreatedUtc { get; set; } [Key(6)] public DateTime CreatedUtc { get; set; }
public DateTime? ExpiresAtUtc { get; set; } [Key(7)] public DateTime? ExpiresAtUtc { get; set; }
} }

View File

@@ -1,13 +1,15 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using MessagePack;
namespace MareSynchronos.API.Dto.McdfShare; namespace MareSynchronos.API.Dto.McdfShare;
[MessagePackObject]
public class McdfShareUpdateRequestDto public class McdfShareUpdateRequestDto
{ {
public Guid ShareId { get; set; } [Key(0)] public Guid ShareId { get; set; }
public string Description { get; set; } = string.Empty; [Key(1)] public string Description { get; set; } = string.Empty;
public DateTime? ExpiresAtUtc { get; set; } [Key(2)] public DateTime? ExpiresAtUtc { get; set; }
public List<string> AllowedIndividuals { get; set; } = []; [Key(3)] public List<string> AllowedIndividuals { get; set; } = [];
public List<string> AllowedSyncshells { get; set; } = []; [Key(4)] public List<string> AllowedSyncshells { get; set; } = [];
} }

View File

@@ -1,17 +1,19 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using MessagePack;
namespace MareSynchronos.API.Dto.McdfShare; namespace MareSynchronos.API.Dto.McdfShare;
[MessagePackObject]
public class McdfShareUploadRequestDto public class McdfShareUploadRequestDto
{ {
public Guid ShareId { get; set; } [Key(0)] public Guid ShareId { get; set; }
public string Description { get; set; } = string.Empty; [Key(1)] public string Description { get; set; } = string.Empty;
public byte[] CipherData { get; set; } = Array.Empty<byte>(); [Key(2)] public byte[] CipherData { get; set; } = Array.Empty<byte>();
public byte[] Nonce { get; set; } = Array.Empty<byte>(); [Key(3)] public byte[] Nonce { get; set; } = Array.Empty<byte>();
public byte[] Salt { get; set; } = Array.Empty<byte>(); [Key(4)] public byte[] Salt { get; set; } = Array.Empty<byte>();
public byte[] Tag { get; set; } = Array.Empty<byte>(); [Key(5)] public byte[] Tag { get; set; } = Array.Empty<byte>();
public DateTime? ExpiresAtUtc { get; set; } [Key(6)] public DateTime? ExpiresAtUtc { get; set; }
public List<string> AllowedIndividuals { get; set; } = []; [Key(7)] public List<string> AllowedIndividuals { get; set; } = [];
public List<string> AllowedSyncshells { get; set; } = []; [Key(8)] public List<string> AllowedSyncshells { get; set; } = [];
} }

View File

@@ -1,11 +1,13 @@
using MareSynchronos.API.Data; using MareSynchronos.API.Data;
using MareSynchronos.API.Data.Enum;
using MessagePack; using MessagePack;
namespace MareSynchronos.API.Dto.User; namespace MareSynchronos.API.Dto.User;
[MessagePackObject(keyAsPropertyName: true)] [MessagePackObject(keyAsPropertyName: true)]
public record TypingStateDto(UserData User, bool IsTyping) public record TypingStateDto(UserData User, bool IsTyping, TypingScope Scope)
{ {
public UserData User { get; set; } = User; public UserData User { get; set; } = User;
public bool IsTyping { get; set; } = IsTyping; public bool IsTyping { get; set; } = IsTyping;
public TypingScope Scope { get; set; } = Scope;
} }

View File

@@ -131,6 +131,7 @@ public interface IMareHub
Task UserSetProfile(UserProfileDto userDescription); Task UserSetProfile(UserProfileDto userDescription);
Task UserSetTypingState(bool isTyping); Task UserSetTypingState(bool isTyping);
Task UserSetTypingState(bool isTyping, TypingScope scope);
Task<CharaDataFullDto?> CharaDataCreate(); Task<CharaDataFullDto?> CharaDataCreate();
Task<CharaDataFullDto?> CharaDataUpdate(CharaDataUpdateDto updateDto); Task<CharaDataFullDto?> CharaDataUpdate(CharaDataUpdateDto updateDto);
Task<bool> CharaDataDelete(string id); Task<bool> CharaDataDelete(string id);