From a2d3b9f0c83a8ef9ed88efab2703ae436eac71b6 Mon Sep 17 00:00:00 2001 From: Jay Date: Tue, 24 Jun 2025 17:11:43 -0400 Subject: docs: Share page diff view improvements (#373) --- packages/web/src/components/DiffView.tsx | 96 +++++++++++++++++++++++++------- 1 file changed, 75 insertions(+), 21 deletions(-) (limited to 'packages/web/src/components/DiffView.tsx') diff --git a/packages/web/src/components/DiffView.tsx b/packages/web/src/components/DiffView.tsx index a7464e2e6..237f25bdf 100644 --- a/packages/web/src/components/DiffView.tsx +++ b/packages/web/src/components/DiffView.tsx @@ -113,29 +113,83 @@ const DiffView: Component = (props) => { return (
-
- {rows().map((r) => ( - - ))} -
- -
- {rows().map((r) => ( - - ))} -
+ {rows().map((r) => ( +
+
+ + {(r.type === "added" || r.type === "modified") && r.right !== undefined && ( + + )} +
+ +
+ +
+
+ ))}
) } export default DiffView + +// String to test diff viewer with +const testDiff = `--- combined_before.txt 2025-06-24 16:38:08 ++++ combined_after.txt 2025-06-24 16:38:12 +@@ -1,21 +1,25 @@ + unchanged line +-deleted line +-old content ++added line ++new content + +-removed empty line below ++added empty line above + +- tab indented +-trailing spaces +-very long line that will definitely wrap in most editors and cause potential alignment issues when displayed in a two column diff view +-unicode content: πŸš€ ✨ δΈ­ζ–‡ +-mixed content with tabs and spaces ++ space indented ++no trailing spaces ++short line ++very long replacement line that will also wrap and test how the diff viewer handles long line additions after short line removals ++different unicode: πŸŽ‰ πŸ’» ζ—₯本θͺž ++normalized content with consistent spacing ++newline to content + +-content to remove +-whitespace only: +-multiple +-consecutive +-deletions +-single deletion ++ ++single addition ++first addition ++second addition ++third addition + line before addition ++first added line ++ ++third added line + line after addition + final unchanged line` -- cgit v1.2.3