From e88ee319919bb900dda6a516065e4c6ff6214384 Mon Sep 17 00:00:00 2001 From: RMidhunSuresh Date: Tue, 7 Dec 2021 11:33:37 +0530 Subject: [PATCH] Add getter for reply body --- .../room/timeline/tiles/BaseTextTile.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/domain/session/room/timeline/tiles/BaseTextTile.js b/src/domain/session/room/timeline/tiles/BaseTextTile.js index 60024ca6..aadcf6f5 100644 --- a/src/domain/session/room/timeline/tiles/BaseTextTile.js +++ b/src/domain/session/room/timeline/tiles/BaseTextTile.js @@ -17,6 +17,7 @@ limitations under the License. import {BaseMessageTile} from "./BaseMessageTile.js"; import {stringAsBody} from "../MessageBody.js"; import {createEnum} from "../../../../../utils/enum"; +import {avatarInitials, getIdentifierColorNumber} from "../../../../avatar.js"; export const BodyFormat = createEnum("Plain", "Html"); @@ -54,6 +55,24 @@ export class BaseTextTile extends BaseMessageTile { this._messageBody = this._parseBody(body, format); this._format = format; } + // console.log("messageBody", this._messageBody); return this._messageBody; } + + get replyPreviewBody() { + const entry = this._entry.relatedEntry; + if (!entry) { + return {}; + } + const format = entry.content.format === "org.matrix.custom.html" ? BodyFormat.Html : BodyFormat.Plain; + const body = entry.content["formatted_body"] ?? entry.content["body"]; + return { + body: this._parseBody(body, format), + sender: entry.displayName, + avatar: { + colorNumber: getIdentifierColorNumber(entry.sender), + initial: avatarInitials(entry.displayName) + } + }; + } }