microsoft / powerapps-tools
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
  • 12% duplication:
    • 4,704 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 606 duplicated lines
  • 51 duplicates
system12% (606 lines)
Duplication per Extension
cs8% (265 lines)
css62% (124 lines)
xaml11% (123 lines)
ts19% (94 lines)
Duplication per Component (primary)
Tools/Apps/Microsoft.PowerApps.ThemeEditor10% (257 lines)
Components/PCF/AzureMaps49% (218 lines)
Tools/Apps/Microsoft.PowerApps.Tools.AppMerger16% (43 lines)
Tools/Apps/Microsoft.PowerApps.Tools.AppChangeFinder8% (36 lines)
Tools/Apps/Microsoft.PowerApps.Tools.PhoneAppConverter31% (31 lines)
Tools/Core/Microsoft.PowerApps.Tools.AppChangeManager8% (21 lines)
Components/PCF/Base64Download0% (0 lines)
Components/PCF/ImageAttachmentControl0% (0 lines)
Components/PCF/SVGEditor0% (0 lines)
Tools/Common/Microsoft.PowerApps.Tools.AppEntities0% (0 lines)
Tools/Common/Microsoft.PowerApps.Tools.Zipper0% (0 lines)
Tools/Common/PowerApps.Tools.Utilities0% (0 lines)
Tools/Core/Microsoft.PowerApps.Tools.PhoneToTablet0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G Tools/Apps/Microsoft.PowerApps.Tools.AppMerger Tools/Apps/Microsoft.PowerApps.Tools.AppMerger Tools/Apps/Microsoft.PowerApps.Tools.PhoneAppConverter Tools/Apps/Microsoft.PowerApps.Tools.PhoneAppConverter Tools/Apps/Microsoft.PowerApps.Tools.AppMerger--Tools/Apps/Microsoft.PowerApps.Tools.PhoneAppConverter 62

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 51 duplicates...
Size#FoldersFilesLinesCode
41 x 2 Components/PCF/AzureMaps...eMapsDataSetControl/css
Components/PCF/AzureMaps...ureMapsFieldControl/css
app.css
app.css
38:78 (53%)
52:92 (46%)
view
19 x 2 Components/PCF/AzureMaps...azureMapsDataSetControl
Components/PCF/AzureMaps...d/azureMapsFieldControl
index.ts
index.ts
235:265 (11%)
167:197 (17%)
view
14 x 2 Tools/Apps/Microsoft.PowerApps.ThemeEditor
Tools/Apps/Microsoft.PowerApps.ThemeEditor
xaml
AddPalette.xaml
Settings.xaml
2:15 (16%)
2:15 (29%)
view
11 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
780:790 (2%)
812:822 (2%)
view
11 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
780:790 (2%)
796:806 (2%)
view
11 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
796:806 (2%)
812:822 (2%)
view
11 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
812:822 (2%)
828:838 (2%)
view
11 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
796:806 (2%)
828:838 (2%)
view
11 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
780:790 (2%)
828:838 (2%)
view
11 x 2 Components/PCF/AzureMaps...eMapsDataSetControl/css
Components/PCF/AzureMaps...ureMapsFieldControl/css
app.css
app.css
26:36 (14%)
40:50 (12%)
view
10 x 2 Tools/Apps/Microsoft.Pow...ChangeFinder/Properties
Tools/Apps/Microsoft.Pow...AppConverter/Properties
AssemblyInfo.cs
AssemblyInfo.cs
13:51 (62%)
13:51 (62%)
view
10 x 2 Components/PCF/AzureMaps...eMapsDataSetControl/css
Components/PCF/AzureMaps...ureMapsFieldControl/css
app.css
app.css
9:18 (13%)
13:22 (11%)
view
10 x 2 Tools/Apps/Microsoft.Pow...ChangeFinder/Properties
Tools/Apps/Microsoft.Pow...ls.AppMerger/Properties
AssemblyInfo.cs
AssemblyInfo.cs
13:51 (62%)
13:51 (62%)
view
10 x 2 Tools/Apps/Microsoft.Pow...ls.AppMerger/Properties
Tools/Apps/Microsoft.Pow...AppConverter/Properties
AssemblyInfo.cs
AssemblyInfo.cs
13:51 (62%)
13:51 (62%)
view
9 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
758:766 (1%)
782:790 (1%)
view
9 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
758:766 (1%)
798:806 (1%)
view
9 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
758:766 (1%)
814:822 (1%)
view
9 x 2 Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
Tools/Apps/Microsoft.Pow...s.ThemeEditor/ViewModel
MainViewModel.cs
MainViewModel.cs
758:766 (1%)
830:838 (1%)
view
9 x 2 Tools/Apps/Microsoft.Pow...s.Tools.AppChangeFinder
Tools/Apps/Microsoft.Pow...s.Tools.AppChangeFinder
xaml
MainWindow.xaml
MainWindow.xaml
59:67 (6%)
174:182 (6%)
view
8 x 2 Tools/Apps/Microsoft.Pow....ThemeEditor/Properties
Tools/Apps/Microsoft.Pow...AppConverter/Properties
AssemblyInfo.cs
AssemblyInfo.cs
14:39 (47%)
13:38 (50%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
23 x 2 Components/PCF/AzureMaps...azureMapsDataSetControl
Components/PCF/AzureMaps...d/azureMapsFieldControl
index.ts
index.ts
235:268 
167:200 
view
8 x 2 Components/PCF/AzureMaps...azureMapsDataSetControl
Components/PCF/AzureMaps...d/azureMapsFieldControl
index.ts
index.ts
298:309 
202:213 
view
7 x 2 Tools/Apps/Microsoft.Pow...s.Tools.AppMerger/Model
Tools/Apps/Microsoft.Pow...ols.AppMerger/ViewModel
EntityModel.cs
MainViewModel.cs
60:68 
82:90 
view
6 x 2 Components/PCF/AzureMaps...azureMapsDataSetControl
Components/PCF/AzureMaps...d/azureMapsFieldControl
index.ts
index.ts
59:71 
52:63 
view