diff --git a/src/components/annoucements/Announcement.jsx b/src/components/annoucements/Announcement.jsx index 1cd7e38088b55084f9aa2c08e78b3ed57e94babd..1ed1045bf96b1ce8ffd6cb9228c186aeca72c3e4 100644 --- a/src/components/annoucements/Announcement.jsx +++ b/src/components/annoucements/Announcement.jsx @@ -75,6 +75,10 @@ const Announcement = ({ "announcement", ].includes(type); + const htmlContent = { + __html: content, + }; + return ( <div className={wrapperClassName} ref={ref}> <div className="flex items-center justify-between mb-2"> @@ -117,7 +121,10 @@ const Announcement = ({ </DropdownMenu> )} </div> - <span className="leading-tight text-sm lg:text-base">{content}</span> + <div + className="leading-tight text-sm lg:text-base content-block" + dangerouslySetInnerHTML={htmlContent} + ></div> </div> ); }; diff --git a/src/components/annoucements/AnnouncementList.jsx b/src/components/annoucements/AnnouncementList.jsx index 3e3ba8df05e29b83a605095569dc509ad3a48ff8..a14a35f47170acc3a8366b80f3b35db5d34285cf 100644 --- a/src/components/annoucements/AnnouncementList.jsx +++ b/src/components/annoucements/AnnouncementList.jsx @@ -43,7 +43,7 @@ const AnnouncementList = ({ key={item.id} datetime={item.datetime} type={item.type} - content={item.content} + content={item.contentHtml} link={item.link} seen={item.seen} canRunActions={canRunActions} diff --git a/src/utils.js b/src/utils.js index 2ff66b90f842649e6f7590666a29a0f535b5a00a..b860c961c59212d194ee68faf325baa094b371e8 100644 --- a/src/utils.js +++ b/src/utils.js @@ -164,6 +164,7 @@ export const parseRawPost = (rawPost) => { export const parseRawAnnouncement = (rawAnnouncement) => { const announcement = { ...pick(rawAnnouncement, ["id", "content", "link"]), + contentHtml: markdownConverter.makeHtml(rawAnnouncement.content), datetime: parse( rawAnnouncement.datetime, "yyyy-MM-dd HH:mm:ss", diff --git a/typings/cf2021.d.ts b/typings/cf2021.d.ts index 135e0bc9f4150ea31ef9cd0b6ec746c51078a115..2afcdfeda148eadf4efda2fbace8f708139a31cc 100644 --- a/typings/cf2021.d.ts +++ b/typings/cf2021.d.ts @@ -70,6 +70,7 @@ declare namespace CF2021 { datetime: Date; type: AnnouncementType; content: string; + contentHtml: string; link?: string; relatedPostId: string; seen: boolean;