Use formatted_body to parse markdown (#133) and partially implement #105, #19

Signed-off-by: Ajay Bura <ajbura@gmail.com>
This commit is contained in:
Ajay Bura 2021-11-21 14:30:21 +05:30
parent 7e7a5e692e
commit 2479dc4096
9 changed files with 271 additions and 2048 deletions

View file

@ -106,7 +106,6 @@ function PeopleDrawer({ roomId }) {
let isGettingMembers = true;
const updateMemberList = (event) => {
if (isGettingMembers) return;
console.log(event?.event?.room_id);
if (event && event?.event?.room_id !== roomId) return;
setMemberList(
simplyfiMembers(

View file

@ -1,3 +1,5 @@
/* eslint-disable jsx-a11y/no-static-element-interactions */
/* eslint-disable jsx-a11y/click-events-have-key-events */
/* eslint-disable react/prop-types */
import React, { useState, useEffect, useLayoutEffect } from 'react';
import PropTypes from 'prop-types';
@ -8,6 +10,7 @@ import dateFormat from 'dateformat';
import initMatrix from '../../../client/initMatrix';
import cons from '../../../client/state/cons';
import { diffMinutes, isNotInSameDay } from '../../../util/common';
import { openProfileViewer } from '../../../client/action/navigation';
import Divider from '../../atoms/divider/Divider';
import { Message, PlaceholderMessage } from '../../molecules/message/Message';
@ -188,8 +191,16 @@ function RoomViewContent({
}
}, [onStateUpdate]);
const handleOnClickCapture = (e) => {
const { target } = e;
const userId = target.getAttribute('data-mx-pill');
if (!userId) return;
openProfileViewer(userId, roomId);
};
let prevMEvent = null;
function renderMessage(mEvent) {
const renderMessage = (mEvent) => {
const isContentOnly = (prevMEvent !== null && prevMEvent.getType() !== 'm.room.member'
&& diffMinutes(mEvent.getDate(), prevMEvent.getDate()) <= MAX_MSG_DIFF_MINUTES
&& prevMEvent.getSender() === mEvent.getSender()
@ -222,7 +233,7 @@ function RoomViewContent({
<Message mEvent={mEvent} isBodyOnly={isContentOnly} roomTimeline={roomTimeline} />
</React.Fragment>
);
}
};
const renderTimeline = () => {
const { timeline } = roomTimeline;
@ -249,7 +260,7 @@ function RoomViewContent({
};
return (
<div className="room-view__content">
<div className="room-view__content" onClick={handleOnClickCapture}>
<div className="timeline__wrapper">
{ renderTimeline() }
</div>