add bulk permissions (#18)
Co-authored-by: rootdarkarchon <root.darkarchon@outlook.com>
This commit is contained in:
7
MareSynchronosAPI/Dto/User/BulkPermissionsDto.cs
Normal file
7
MareSynchronosAPI/Dto/User/BulkPermissionsDto.cs
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
using MareSynchronos.API.Data.Enum;
|
||||||
|
using MessagePack;
|
||||||
|
|
||||||
|
namespace MareSynchronos.API.Dto.User;
|
||||||
|
|
||||||
|
[MessagePackObject(keyAsPropertyName: true)]
|
||||||
|
public record BulkPermissionsDto(Dictionary<string, UserPermissions> AffectedUsers, Dictionary<string, GroupUserPreferredPermissions> AffectedGroups);
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
using MareSynchronos.API.Data;
|
||||||
|
using MareSynchronos.API.Data.Enum;
|
||||||
|
using MessagePack;
|
||||||
|
|
||||||
|
namespace MareSynchronos.API.Dto.User;
|
||||||
|
|
||||||
|
[MessagePackObject(keyAsPropertyName: true)]
|
||||||
|
public record UserIndividualPairStatusDto(UserData User, IndividualPairStatus IndividualPairStatus) : UserDto(User);
|
||||||
@@ -6,6 +6,3 @@ namespace MareSynchronos.API.Dto.User;
|
|||||||
|
|
||||||
[MessagePackObject(keyAsPropertyName: true)]
|
[MessagePackObject(keyAsPropertyName: true)]
|
||||||
public record UserPermissionsDto(UserData User, UserPermissions Permissions) : UserDto(User);
|
public record UserPermissionsDto(UserData User, UserPermissions Permissions) : UserDto(User);
|
||||||
|
|
||||||
[MessagePackObject(keyAsPropertyName: true)]
|
|
||||||
public record UserIndividualPairStatusDto(UserData User, IndividualPairStatus IndividualPairStatus) : UserDto(User);
|
|
||||||
@@ -7,107 +7,62 @@ namespace MareSynchronos.API.SignalR;
|
|||||||
|
|
||||||
public interface IMareHub
|
public interface IMareHub
|
||||||
{
|
{
|
||||||
const int ApiVersion = 27;
|
const int ApiVersion = 28;
|
||||||
const string Path = "/mare";
|
const string Path = "/mare";
|
||||||
|
|
||||||
Task<bool> CheckClientHealth();
|
Task<bool> CheckClientHealth();
|
||||||
|
|
||||||
Task Client_DownloadReady(Guid requestId);
|
Task Client_DownloadReady(Guid requestId);
|
||||||
|
|
||||||
Task Client_GroupChangePermissions(GroupPermissionDto groupPermission);
|
Task Client_GroupChangePermissions(GroupPermissionDto groupPermission);
|
||||||
|
|
||||||
Task Client_GroupDelete(GroupDto groupDto);
|
Task Client_GroupDelete(GroupDto groupDto);
|
||||||
|
|
||||||
Task Client_GroupPairChangeUserInfo(GroupPairUserInfoDto userInfo);
|
Task Client_GroupPairChangeUserInfo(GroupPairUserInfoDto userInfo);
|
||||||
|
|
||||||
Task Client_GroupPairJoined(GroupPairFullInfoDto groupPairInfoDto);
|
Task Client_GroupPairJoined(GroupPairFullInfoDto groupPairInfoDto);
|
||||||
|
|
||||||
Task Client_GroupPairLeft(GroupPairDto groupPairDto);
|
Task Client_GroupPairLeft(GroupPairDto groupPairDto);
|
||||||
|
|
||||||
Task Client_GroupSendFullInfo(GroupFullInfoDto groupInfo);
|
Task Client_GroupSendFullInfo(GroupFullInfoDto groupInfo);
|
||||||
|
|
||||||
Task Client_GroupSendInfo(GroupInfoDto groupInfo);
|
Task Client_GroupSendInfo(GroupInfoDto groupInfo);
|
||||||
|
|
||||||
Task Client_ReceiveServerMessage(MessageSeverity messageSeverity, string message);
|
Task Client_ReceiveServerMessage(MessageSeverity messageSeverity, string message);
|
||||||
|
|
||||||
Task Client_UpdateSystemInfo(SystemInfoDto systemInfo);
|
Task Client_UpdateSystemInfo(SystemInfoDto systemInfo);
|
||||||
|
|
||||||
Task Client_UserAddClientPair(UserPairDto dto);
|
Task Client_UserAddClientPair(UserPairDto dto);
|
||||||
|
|
||||||
Task Client_UserReceiveCharacterData(OnlineUserCharaDataDto dataDto);
|
Task Client_UserReceiveCharacterData(OnlineUserCharaDataDto dataDto);
|
||||||
|
|
||||||
Task Client_UserReceiveUploadStatus(UserDto dto);
|
Task Client_UserReceiveUploadStatus(UserDto dto);
|
||||||
|
|
||||||
Task Client_UserRemoveClientPair(UserDto dto);
|
Task Client_UserRemoveClientPair(UserDto dto);
|
||||||
|
|
||||||
Task Client_UserSendOffline(UserDto dto);
|
Task Client_UserSendOffline(UserDto dto);
|
||||||
|
|
||||||
Task Client_UserSendOnline(OnlineUserIdentDto dto);
|
Task Client_UserSendOnline(OnlineUserIdentDto dto);
|
||||||
|
|
||||||
Task Client_UserUpdateOtherPairPermissions(UserPermissionsDto dto);
|
Task Client_UserUpdateOtherPairPermissions(UserPermissionsDto dto);
|
||||||
|
|
||||||
Task Client_UpdateUserIndividualPairStatusDto(UserIndividualPairStatusDto dto);
|
Task Client_UpdateUserIndividualPairStatusDto(UserIndividualPairStatusDto dto);
|
||||||
|
|
||||||
Task Client_UserUpdateProfile(UserDto dto);
|
Task Client_UserUpdateProfile(UserDto dto);
|
||||||
|
|
||||||
Task Client_UserUpdateSelfPairPermissions(UserPermissionsDto dto);
|
Task Client_UserUpdateSelfPairPermissions(UserPermissionsDto dto);
|
||||||
|
|
||||||
Task Client_UserUpdateDefaultPermissions(DefaultPermissionsDto dto);
|
Task Client_UserUpdateDefaultPermissions(DefaultPermissionsDto dto);
|
||||||
Task Client_GroupChangeUserPairPermissions(GroupPairUserPermissionDto dto);
|
Task Client_GroupChangeUserPairPermissions(GroupPairUserPermissionDto dto);
|
||||||
|
|
||||||
Task<ConnectionDto> GetConnectionDto();
|
Task<ConnectionDto> GetConnectionDto();
|
||||||
|
|
||||||
Task GroupBanUser(GroupPairDto dto, string reason);
|
Task GroupBanUser(GroupPairDto dto, string reason);
|
||||||
|
|
||||||
Task GroupChangeGroupPermissionState(GroupPermissionDto dto);
|
Task GroupChangeGroupPermissionState(GroupPermissionDto dto);
|
||||||
|
|
||||||
Task GroupChangeIndividualPermissionState(GroupPairUserPermissionDto dto);
|
|
||||||
|
|
||||||
Task GroupChangeOwnership(GroupPairDto groupPair);
|
Task GroupChangeOwnership(GroupPairDto groupPair);
|
||||||
|
|
||||||
Task<bool> GroupChangePassword(GroupPasswordDto groupPassword);
|
Task<bool> GroupChangePassword(GroupPasswordDto groupPassword);
|
||||||
|
|
||||||
Task GroupClear(GroupDto group);
|
Task GroupClear(GroupDto group);
|
||||||
|
|
||||||
Task<GroupJoinDto> GroupCreate();
|
Task<GroupJoinDto> GroupCreate();
|
||||||
|
|
||||||
Task<List<string>> GroupCreateTempInvite(GroupDto group, int amount);
|
Task<List<string>> GroupCreateTempInvite(GroupDto group, int amount);
|
||||||
|
|
||||||
Task GroupDelete(GroupDto group);
|
Task GroupDelete(GroupDto group);
|
||||||
|
|
||||||
Task<List<BannedGroupUserDto>> GroupGetBannedUsers(GroupDto group);
|
Task<List<BannedGroupUserDto>> GroupGetBannedUsers(GroupDto group);
|
||||||
|
|
||||||
Task<GroupJoinInfoDto> GroupJoin(GroupPasswordDto passwordedGroup);
|
Task<GroupJoinInfoDto> GroupJoin(GroupPasswordDto passwordedGroup);
|
||||||
Task<bool> GroupJoinFinalize(GroupJoinDto passwordedGroup);
|
Task<bool> GroupJoinFinalize(GroupJoinDto passwordedGroup);
|
||||||
|
|
||||||
Task GroupLeave(GroupDto group);
|
Task GroupLeave(GroupDto group);
|
||||||
|
|
||||||
Task GroupRemoveUser(GroupPairDto groupPair);
|
Task GroupRemoveUser(GroupPairDto groupPair);
|
||||||
|
|
||||||
Task GroupSetUserInfo(GroupPairUserInfoDto groupPair);
|
Task GroupSetUserInfo(GroupPairUserInfoDto groupPair);
|
||||||
|
|
||||||
Task<List<GroupFullInfoDto>> GroupsGetAll();
|
Task<List<GroupFullInfoDto>> GroupsGetAll();
|
||||||
|
|
||||||
Task GroupUnbanUser(GroupPairDto groupPair);
|
Task GroupUnbanUser(GroupPairDto groupPair);
|
||||||
|
|
||||||
Task UserAddPair(UserDto user);
|
Task UserAddPair(UserDto user);
|
||||||
|
|
||||||
Task UserDelete();
|
Task UserDelete();
|
||||||
|
|
||||||
Task<List<OnlineUserIdentDto>> UserGetOnlinePairs();
|
Task<List<OnlineUserIdentDto>> UserGetOnlinePairs();
|
||||||
|
|
||||||
Task<List<UserFullPairDto>> UserGetPairedClients();
|
Task<List<UserFullPairDto>> UserGetPairedClients();
|
||||||
|
|
||||||
Task<UserProfileDto> UserGetProfile(UserDto dto);
|
Task<UserProfileDto> UserGetProfile(UserDto dto);
|
||||||
|
|
||||||
Task UserPushData(UserCharaDataMessageDto dto);
|
Task UserPushData(UserCharaDataMessageDto dto);
|
||||||
|
|
||||||
Task UserRemovePair(UserDto userDto);
|
Task UserRemovePair(UserDto userDto);
|
||||||
|
|
||||||
Task UserReportProfile(UserProfileReportDto userDto);
|
Task UserReportProfile(UserProfileReportDto userDto);
|
||||||
|
|
||||||
Task UserSetPairPermissions(UserPermissionsDto userPermissions);
|
|
||||||
|
|
||||||
Task UserSetProfile(UserProfileDto userDescription);
|
Task UserSetProfile(UserProfileDto userDescription);
|
||||||
Task UserUpdateDefaultPermissions(DefaultPermissionsDto defaultPermissionsDto);
|
Task UserUpdateDefaultPermissions(DefaultPermissionsDto defaultPermissionsDto);
|
||||||
|
Task SetBulkPermissions(BulkPermissionsDto dto);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user