cetirizine

An experimental matrix client written in reactjs utilizing tailwind and storybook
git clone git://archive.git.mtrnord.blog/MTRNord/cetirizine.git
Log | Files | Refs | README | LICENSE

commit bc2f4589e5403a06408d1256b0c4603d7aad98b1
parent ee404db92af35314c7be1c3de60d52c0de472f16
Author: MTRNord <mtrnord1@gmail.com>
Date:   Fri, 21 Apr 2023 19:40:24 +0200

fix: Prevent slight xss issue

Diffstat:
Msrc/components/input/chat/plugins/ToolbarPlugin.tsx | 9+++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/components/input/chat/plugins/ToolbarPlugin.tsx b/src/components/input/chat/plugins/ToolbarPlugin.tsx @@ -9,7 +9,8 @@ import { ChangeEvent, MutableRefObject, Dispatch, - SetStateAction + SetStateAction, + createElement } from "react"; import { CAN_REDO_COMMAND, @@ -206,6 +207,8 @@ function FloatingLinkEditor({ editor }: { editor: LexicalEditor }) { } }, [isEditMode]); + const safeLink = createElement("a", { href: linkUrl, target: "_blank", rel: "noopener noreferrer" }, linkUrl); + return ( <div ref={editorRef} className="link-editor"> {isEditMode ? ( @@ -234,9 +237,7 @@ function FloatingLinkEditor({ editor }: { editor: LexicalEditor }) { ) : ( <> <div className="link-input"> - <a href={linkUrl} target="_blank" rel="noopener noreferrer"> - {linkUrl} - </a> + {safeLink} <div className="link-edit" role="button"