diff --git a/.changeset/weak-hotels-shout.md b/.changeset/weak-hotels-shout.md new file mode 100644 index 00000000000..48b0be09f5d --- /dev/null +++ b/.changeset/weak-hotels-shout.md @@ -0,0 +1,5 @@ +--- +"@primer/react": patch +--- + +MarkdownViewer bug fix: Only run `replaceChildren` when `htmlContainer` changes diff --git a/src/drafts/MarkdownViewer/MarkdownViewer.tsx b/src/drafts/MarkdownViewer/MarkdownViewer.tsx index 5e0b0afa8f3..209ecd4274a 100644 --- a/src/drafts/MarkdownViewer/MarkdownViewer.tsx +++ b/src/drafts/MarkdownViewer/MarkdownViewer.tsx @@ -107,7 +107,7 @@ const MarkdownViewer = ({ // If we were to inject the `...htmlContainer.children` instead of the container element itself, // those children elements would be moved from the `htmlContainer` to the `outputContainer`. Then if // other effects use `htmlContainer.querySelectorAll`, they wouldn't find any elements to affect - useEffect(() => outputContainerRef.current?.replaceChildren(htmlContainer)) + useEffect(() => outputContainerRef.current?.replaceChildren(htmlContainer), [htmlContainer]) return loading ? (