microsoft / PowerBI-visuals-PowerKPI
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
  • 5% duplication:
    • 5,558 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 309 duplicated lines
  • 47 duplicates
system5% (309 lines)
Duplication per Extension
ts5% (309 lines)
Duplication per Component (primary)
src/visualComponent8% (300 lines)
src/services14% (9 lines)
ROOT0% (0 lines)
src/behavior0% (0 lines)
src/capabilities0% (0 lines)
src/converter0% (0 lines)
src/dataRepresentation0% (0 lines)
src/event0% (0 lines)
src/layout0% (0 lines)
src/settings0% (0 lines)
src0% (0 lines)
styles0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 47 duplicates...
Size#FoldersFilesLinesCode
11 x 2 src/visualComponent/axes
src/visualComponent/axes
xAxisComponent.ts
yAxisComponent.ts
101:116 (5%)
89:104 (11%)
view
11 x 2 src/visualComponent/combo
src/visualComponent
lineComponent.ts
dotsComponent.ts
80:92 (8%)
46:58 (19%)
view
11 x 2 src/visualComponent/combo
src/visualComponent/combo
comboComponent.ts
lineComponent.ts
55:67 (22%)
80:92 (8%)
view
11 x 2 src/visualComponent/combo
src/visualComponent
comboComponent.ts
dotsComponent.ts
55:67 (22%)
46:58 (19%)
view
11 x 2 src/visualComponent
src/visualComponent
chartComponent.ts
dotsComponent.ts
56:68 (12%)
46:58 (19%)
view
11 x 2 src/visualComponent
src/visualComponent/combo
chartComponent.ts
comboComponent.ts
56:68 (12%)
55:67 (22%)
view
11 x 2 src/visualComponent
src/visualComponent/combo
chartComponent.ts
lineComponent.ts
56:68 (12%)
80:92 (8%)
view
10 x 2 src/visualComponent
src/visualComponent
layoutComponent.ts
mainComponent.ts
86:98 (17%)
105:117 (15%)
view
10 x 2 src/visualComponent
src/visualComponent
layoutComponent.ts
legendComponent.ts
50:61 (17%)
47:58 (12%)
view
9 x 2 src/visualComponent/axes
src/visualComponent/axes
xAxisComponent.ts
yAxisComponent.ts
30:52 (4%)
30:50 (9%)
view
9 x 2 src/visualComponent/kpi
src/visualComponent/kpi
varianceComponentWithCustomLabel.ts
varianceComponentWithIndicator.ts
43:54 (12%)
51:62 (7%)
view
9 x 2 src/visualComponent/combo
src/visualComponent/combo
areaComponent.ts
lineComponent.ts
89:100 (9%)
104:115 (6%)
view
9 x 2 src/services
src/visualComponent
labelMeasurementService.ts
labelsComponent.ts
83:91 (14%)
102:110 (12%)
view
8 x 2 src/visualComponent/combo
src/visualComponent
lineComponent.ts
dotComponent.ts
105:115 (6%)
70:80 (19%)
view
8 x 2 src/visualComponent
src/visualComponent
labelsComponent.ts
verticalLineComponent.ts
57:67 (10%)
41:51 (20%)
view
8 x 2 src/visualComponent/combo
src/visualComponent
areaComponent.ts
dotComponent.ts
90:100 (8%)
70:80 (19%)
view
7 x 2 src/visualComponent/axes
src/visualComponent
yAxisComponent.ts
svgComponent.ts
76:83 (7%)
81:88 (2%)
view
7 x 2 src/visualComponent
src/visualComponent
chartComponent.ts
dotsComponent.ts
121:127 (8%)
93:99 (12%)
view
7 x 2 src/visualComponent/axes/referenceLine
src/visualComponent/combo
axisReferenceLineBaseComponent.ts
lineComponent.ts
56:63 (12%)
80:87 (5%)
view
7 x 2 src/visualComponent
src/visualComponent
dotsComponent.ts
labelsComponent.ts
46:53 (12%)
57:64 (9%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
11 x 3 src/visualComponent/combo
src/visualComponent/combo
src/visualComponent
comboComponent.ts
lineComponent.ts
dotsComponent.ts
55:68 
80:93 
46:59 
view
10 x 2 src/services
src/visualComponent
labelMeasurementService.ts
labelsComponent.ts
82:92 
101:111 
view
7 x 3 src/visualComponent/axes/referenceLine
src/visualComponent
src/visualComponent
axisReferenceLineBaseComponent.ts
labelsComponent.ts
verticalLineComponent.ts
56:64 
57:65 
41:49 
view
6 x 2 src/visualComponent/kpi
src/visualComponent/kpi
varianceComponentWithCustomLabel.ts
varianceComponentWithIndicator.ts
43:50 
51:58 
view