Skip to content

Commit e0594ff

Browse files
committed
refactor: restructure project layout and rewrite diff engine
- Move library from BlazorTextDiff/ to src/BlazorTextDiff/ - Update solution file with src/tests directory structure - Upgrade packages: AspNetCore 9.0.8 -> 9.0.13, DiffPlex 1.8.0 -> 1.9.0 - Remove JS interop (BlazorTextDiff.js) - pure C#/Blazor now - Remove SCSS pipeline (compilerconfig.json, BlazorDiff.scss) - Remove stale docs/ directory - Rewrite TextDiff.razor: use CharacterChunker for per-character diffs, add IgnoreWhiteSpace post-processing, Class/AdditionalAttributes params - Rewrite TextDiffLine.razor: word+character two-tier highlighting with word grouping logic for partial and fully changed words - Fix DiffStats to count deletions from OldText pane (was always 0) - Add interactive collapse/expand toggle
1 parent 3cdda18 commit e0594ff

19 files changed

Lines changed: 345 additions & 887 deletions

BlazorTextDiff.sln

Lines changed: 45 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,71 @@ Microsoft Visual Studio Solution File, Format Version 12.00
33
# Visual Studio Version 17
44
VisualStudioVersion = 17.3.32929.385
55
MinimumVisualStudioVersion = 10.0.40219.1
6-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BlazorTextDiff", "BlazorTextDiff\BlazorTextDiff.csproj", "{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}"
6+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}"
77
EndProject
8-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BlazorTextDiff.Web", "BlazorTextDiff.Web\BlazorTextDiff.Web.csproj", "{3D074FDC-FD1B-4E1E-9A9E-030727444A66}"
8+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{B2C3D4E5-F6A7-8901-BCDE-F12345678901}"
9+
EndProject
10+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BlazorTextDiff", "src\BlazorTextDiff\BlazorTextDiff.csproj", "{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}"
11+
EndProject
12+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BlazorTextDiff.Web", "src\BlazorTextDiff.Web\BlazorTextDiff.Web.csproj", "{3D074FDC-FD1B-4E1E-9A9E-030727444A66}"
13+
EndProject
14+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BlazorTextDiff.Tests", "tests\BlazorTextDiff.Tests\BlazorTextDiff.Tests.csproj", "{D9CCECCD-F332-465C-8584-065F477AD15D}"
915
EndProject
1016
Global
1117
GlobalSection(SolutionConfigurationPlatforms) = preSolution
1218
Debug|Any CPU = Debug|Any CPU
19+
Debug|x64 = Debug|x64
20+
Debug|x86 = Debug|x86
1321
Release|Any CPU = Release|Any CPU
22+
Release|x64 = Release|x64
23+
Release|x86 = Release|x86
1424
EndGlobalSection
1525
GlobalSection(ProjectConfigurationPlatforms) = postSolution
1626
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
1727
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Debug|Any CPU.Build.0 = Debug|Any CPU
28+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Debug|x64.ActiveCfg = Debug|Any CPU
29+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Debug|x64.Build.0 = Debug|Any CPU
30+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Debug|x86.ActiveCfg = Debug|Any CPU
31+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Debug|x86.Build.0 = Debug|Any CPU
1832
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Release|Any CPU.ActiveCfg = Release|Any CPU
1933
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Release|Any CPU.Build.0 = Release|Any CPU
34+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Release|x64.ActiveCfg = Release|Any CPU
35+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Release|x64.Build.0 = Release|Any CPU
36+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Release|x86.ActiveCfg = Release|Any CPU
37+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8}.Release|x86.Build.0 = Release|Any CPU
2038
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
2139
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Debug|Any CPU.Build.0 = Debug|Any CPU
40+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Debug|x64.ActiveCfg = Debug|Any CPU
41+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Debug|x64.Build.0 = Debug|Any CPU
42+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Debug|x86.ActiveCfg = Debug|Any CPU
43+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Debug|x86.Build.0 = Debug|Any CPU
2244
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Release|Any CPU.ActiveCfg = Release|Any CPU
2345
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Release|Any CPU.Build.0 = Release|Any CPU
46+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Release|x64.ActiveCfg = Release|Any CPU
47+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Release|x64.Build.0 = Release|Any CPU
48+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Release|x86.ActiveCfg = Release|Any CPU
49+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66}.Release|x86.Build.0 = Release|Any CPU
50+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
51+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Debug|Any CPU.Build.0 = Debug|Any CPU
52+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Debug|x64.ActiveCfg = Debug|Any CPU
53+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Debug|x64.Build.0 = Debug|Any CPU
54+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Debug|x86.ActiveCfg = Debug|Any CPU
55+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Debug|x86.Build.0 = Debug|Any CPU
56+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Release|Any CPU.ActiveCfg = Release|Any CPU
57+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Release|Any CPU.Build.0 = Release|Any CPU
58+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Release|x64.ActiveCfg = Release|Any CPU
59+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Release|x64.Build.0 = Release|Any CPU
60+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Release|x86.ActiveCfg = Release|Any CPU
61+
{D9CCECCD-F332-465C-8584-065F477AD15D}.Release|x86.Build.0 = Release|Any CPU
2462
EndGlobalSection
2563
GlobalSection(SolutionProperties) = preSolution
2664
HideSolutionNode = FALSE
2765
EndGlobalSection
66+
GlobalSection(NestedProjects) = preSolution
67+
{8268065C-5552-47C2-B8DE-38EFF8A0F0E8} = {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}
68+
{3D074FDC-FD1B-4E1E-9A9E-030727444A66} = {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}
69+
{D9CCECCD-F332-465C-8584-065F477AD15D} = {B2C3D4E5-F6A7-8901-BCDE-F12345678901}
70+
EndGlobalSection
2871
GlobalSection(ExtensibilityGlobals) = postSolution
2972
SolutionGuid = {7B508BCF-52CC-4CB1-9F82-F85A4CDC4A16}
3073
EndGlobalSection

BlazorTextDiff/DiffStats.cs

Lines changed: 0 additions & 43 deletions
This file was deleted.

BlazorTextDiff/TextDiff.razor

Lines changed: 0 additions & 120 deletions
This file was deleted.

BlazorTextDiff/TextDiffLine.razor

Lines changed: 0 additions & 26 deletions
This file was deleted.

BlazorTextDiff/compilerconfig.json

Lines changed: 0 additions & 6 deletions
This file was deleted.

BlazorTextDiff/compilerconfig.json.defaults

Lines changed: 0 additions & 63 deletions
This file was deleted.

0 commit comments

Comments
 (0)