about summary refs log tree commit diff
path: root/MatrixRoomUtils.Web/Pages/User/DMManager.razor
diff options
context:
space:
mode:
Diffstat (limited to 'MatrixRoomUtils.Web/Pages/User/DMManager.razor')
-rw-r--r--MatrixRoomUtils.Web/Pages/User/DMManager.razor62
1 files changed, 0 insertions, 62 deletions
diff --git a/MatrixRoomUtils.Web/Pages/User/DMManager.razor b/MatrixRoomUtils.Web/Pages/User/DMManager.razor
deleted file mode 100644

index a327793..0000000 --- a/MatrixRoomUtils.Web/Pages/User/DMManager.razor +++ /dev/null
@@ -1,62 +0,0 @@ -@page "/User/DirectMessages" -@using LibMatrix.EventTypes.Spec.State -@using LibMatrix.Responses -@using MatrixRoomUtils.Abstractions -<h3>Direct Messages</h3> -<hr/> - -@foreach (var (targetUser, rooms) in DMRooms) { - <div> - <InlineUserItem User="targetUser"></InlineUserItem> - @foreach (var room in rooms) { - <RoomListItem RoomInfo="room" LoadData="true"></RoomListItem> - } - </div> -} - -@code { - private string? _status; - private AuthenticatedHomeserverGeneric? Homeserver { get; set; } - private Dictionary<UserProfileResponse, List<RoomInfo>> DMRooms { get; set; } = new(); - - public string? Status { - get => _status; - set { - _status = value; - StateHasChanged(); - } - } - - protected override async Task OnInitializedAsync() { - Homeserver = await MRUStorage.GetCurrentSessionOrNavigate(); - if (Homeserver is null) return; - Status = "Loading global profile..."; - if (Homeserver.WhoAmI?.UserId is null) return; - - Status = "Loading DM list from account data..."; - var dms = await Homeserver.GetAccountDataAsync<Dictionary<string, List<string>>>("m.direct"); - DMRooms.Clear(); - foreach (var (userId, rooms) in dms) { - var roomList = new List<RoomInfo>(); - DMRooms.Add(await Homeserver.GetProfileAsync(userId), roomList); - foreach (var room in rooms) { - var roomInfo = new RoomInfo() { Room = Homeserver.GetRoom(room) }; - roomList.Add(roomInfo); - roomInfo.StateEvents.Add(new() { - Type = RoomNameEventContent.EventId, - TypedContent = new RoomNameEventContent() { - Name = await Homeserver.GetRoom(room).GetNameOrFallbackAsync(4) - }, - RoomId = room, Sender = null, EventId = null - }); - } - StateHasChanged(); - } - - StateHasChanged(); - Status = null; - - await base.OnInitializedAsync(); - } - -} \ No newline at end of file