about summary refs log tree commit diff
path: root/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor
diff options
context:
space:
mode:
Diffstat (limited to 'MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor')
-rw-r--r--MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor32
1 files changed, 28 insertions, 4 deletions
diff --git a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor

index 8073406..81956b0 100644 --- a/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor +++ b/MatrixRoomUtils.Web/Shared/TimelineComponents/TimelineMessageItem.razor
@@ -1,10 +1,34 @@ @using ArcaneLibs.Extensions +@using LibMatrix.EventTypes.Spec @inherits BaseTimelineItem -<pre> - @Event.RawContent?.ToJson(indent: false) -</pre> +<span> + @if (!HasPreviousMessage) { + <span><InlineUserItem User="@CurrentSenderProfile" Homeserver="@Homeserver" UserId="@Event.StateKey"></InlineUserItem>:</span><br/> + } + @switch (currentEventContent.MessageType) { + case "m.text": { + @foreach (var line in currentEventContent.Body.Split('\n')) { + <span>@line</span><br/> + } + break; + } + case "m.image": { + <i>@currentEventContent.Body</i><br/> + <img src="@Homeserver.ResolveMediaUri(currentEventContent.Url)"> + break; + } + default: { + <pre> + @Event.RawContent?.ToJson(indent: false) + </pre> + break; + } + } +</span> @code { + private RoomMessageEventContent? previousEventContent => PreviousState?.TypedContent as RoomMessageEventContent; -} + private RoomMessageEventContent? currentEventContent => Event.TypedContent as RoomMessageEventContent; +} \ No newline at end of file