aws / porting-assistant-dotnet-ui
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 10% duplication:
    • 11,400 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,171 duplicated lines
  • 108 duplicates
system10% (1,171 lines)
Duplication per Extension
tsx12% (669 lines)
ts9% (446 lines)
cs4% (38 lines)
scss4% (18 lines)
Duplication per Component (primary)
packages/react/src/components9% (511 lines)
packages/react/src/containers31% (198 lines)
packages/electron/src17% (154 lines)
packages/react/src/store7% (98 lines)
packages/react/src11% (68 lines)
packages/integration-test/src12% (54 lines)
packages/electron/src/telemetry9% (32 lines)
packages/csharp/PortingAssistant/PortingAssistant.Common5% (20 lines)
packages/csharp/PortingAssistant/PortingAssistant.Api9% (18 lines)
packages/electron/src/models15% (18 lines)
packages/react/src/constants0% (0 lines)
packages/react/src/utils0% (0 lines)
packages/react/src/models0% (0 lines)
packages/react/public0% (0 lines)
packages/react0% (0 lines)
packages/electron/build-scripts0% (0 lines)
packages/csharp/PortingAssistant/PortingAssistant.Telemetry0% (0 lines)
packages/csharp/PortingAssistant/PortingAssistant.VisualStudio0% (0 lines)
ROOT0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 108 duplicates...
Size#FoldersFilesLinesCode
25 x 2 packages/react/src/components/PortProject
packages/react/src/components/PortSolution
PortProjectDashboard.tsx
PortSolutionDashboard.tsx
41:67 (32%)
57:83 (30%)
view
19 x 2 packages/electron/src
packages/electron/src
electron-backend.ts
electron-backend.ts
50:68 (7%)
159:177 (7%)
view
17 x 2 packages/react/src/containers
packages/react/src/containers
PortProject.tsx
PortSolution.tsx
34:51 (21%)
29:46 (28%)
view
17 x 2 packages/react/src/components/AssessProject
packages/react/src/components/AssessSolution
ProjectSummary.tsx
SolutionSummary.tsx
68:87 (18%)
134:153 (10%)
view
17 x 2 packages/electron/src
packages/electron/src
electron-backend.ts
electron-backend.ts
78:97 (6%)
269:288 (6%)
view
13 x 2 packages/react/src/components/AssessShared
packages/react/src/components/AssessShared
ApiTable.tsx
FileTable.tsx
210:224 (7%)
153:167 (7%)
view
13 x 2 packages/electron/src
packages/electron/src
preload-localStore.ts
preload-localStore.ts
119:131 (6%)
182:194 (6%)
view
13 x 2 packages/react/src
packages/react/src
mockData.ts
mockData.ts
35:47 (4%)
53:65 (4%)
view
12 x 2 packages/react/src/components/AssessSolution
packages/react/src/components/Dashboard
AssessSolutionDashboard.tsx
DashboardTable.tsx
164:175 (6%)
83:94 (3%)
view
12 x 2 packages/electron/src
packages/electron/src
preload-localStore.ts
preload-localStore.ts
91:102 (5%)
183:194 (5%)
view
12 x 2 packages/react/src/store/selectors
packages/react/src/store/selectors
solutionSelectors.ts
solutionSelectors.ts
136:148 (7%)
170:182 (7%)
view
12 x 2 packages/electron/src
packages/electron/src
preload-localStore.ts
preload-localStore.ts
91:102 (5%)
120:131 (5%)
view
11 x 2 packages/react/src/components/Setup
packages/react/src/components/Setup
ProfileSelection.tsx
ProfileSelectionModal.tsx
200:210 (3%)
67:77 (10%)
view
10 x 2 packages/react/src/components/AssessSolution
packages/react/src/components/PortShared
AssessSolutionDashboard.tsx
handlePortProjectSubmission.ts
166:175 (5%)
132:141 (8%)
view
10 x 2 packages/react/src/containers
packages/react/src/containers
AssessProject.tsx
AssessSolution.tsx
28:37 (20%)
28:37 (17%)
view
10 x 2 packages/csharp/PortingA...gAssistant.Common/Utils
packages/csharp/PortingA...gAssistant.Common/Utils
CustomerContributionUtils.cs
CustomerContributionUtils.cs
31:45 (14%)
67:81 (14%)
view
10 x 2 packages/react/src/components/AddSolution
packages/react/src/components/PortShared
AddSolutionForm.tsx
handlePortProjectSubmission.ts
35:44 (8%)
132:141 (8%)
view
10 x 2 packages/react/src/components/Dashboard
packages/react/src/components/PortShared
DashboardTable.tsx
handlePortProjectSubmission.ts
85:94 (3%)
132:141 (8%)
view
10 x 2 packages/react/src/components/AssessShared
packages/react/src/components/AssessShared
ApiTable.tsx
FileTable.tsx
42:51 (5%)
39:48 (5%)
view
10 x 2 packages/react/src/components/AddSolution
packages/react/src/components/AssessSolution
AddSolutionForm.tsx
AssessSolutionDashboard.tsx
35:44 (8%)
166:175 (5%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
8 x 5 packages/react/src/store/sagas
packages/react/src/components/AddSolution
packages/react/src/components/AssessSolution
packages/react/src/components/PortShared
packages/react/src/components/Dashboard
backendSaga.ts
AddSolutionForm.tsx
AssessSolutionDashboard.tsx
handlePortProjectSubmission.ts
DashboardTable.tsx
107:115 
33:41 
164:172 
130:138 
83:91 
view
6 x 2 packages/electron/src
packages/electron/src
electron.ts
electron.ts
62:68 
72:78 
view