firebase / firebaseui-web
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
  • 8% duplication:
    • 17,228 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,504 duplicated lines
  • 304 duplicates
system8% (1,504 lines)
Duplication per Extension
js8% (1,095 lines)
soy18% (383 lines)
html3% (14 lines)
hbs60% (12 lines)
Duplication per Component (primary)
javascript/widgets10% (602 lines)
soy15% (397 lines)
javascript/ui10% (390 lines)
buildtools/country_data33% (87 lines)
ROOT5% (16 lines)
javascript/testing2% (12 lines)
stylesheet0% (0 lines)
firebase-externs0% (0 lines)
javascript/data0% (0 lines)
javascript/utils0% (0 lines)
javascript/externs0% (0 lines)
externs0% (0 lines)
buildtools0% (0 lines)
buildtools/container0% (0 lines)
buildtools/publish0% (0 lines)

Duplication Between Components (50+ lines)

G buildtools/country_data buildtools/country_data soy soy buildtools/country_data--soy 54

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 304 duplicates...
Size#FoldersFilesLinesCode
22 x 2 javascript/widgets
javascript/widgets
config.js
uihandlerconfig.js
620:650 (4%)
153:185 (12%)
view
17 x 2 javascript/ui/page
javascript/ui/page
passwordreset.js
passwordsignup.js
68:86 (40%)
155:174 (17%)
view
17 x 2 javascript/ui/page
javascript/ui/page
emaillinksigninconfirmation.js
passwordrecovery.js
97:115 (31%)
85:103 (32%)
view
17 x 2 javascript/ui/page
javascript/ui/page
passwordrecovery.js
signin.js
85:103 (32%)
99:117 (29%)
view
17 x 2 javascript/ui/page
javascript/ui/page
emaillinksigninconfirmation.js
signin.js
97:115 (31%)
99:117 (29%)
view
15 x 2 buildtools/country_data
buildtools/country_data
compress_pngs.js
make_flag_sprite.js
1:16 (36%)
1:16 (36%)
view
15 x 2 buildtools/country_data
buildtools/country_data
compress_pngs.js
make_flag_pngs.js
1:16 (36%)
1:16 (37%)
view
15 x 2 buildtools/country_data
buildtools/country_data
filter_country_data.js
make_flag_pngs.js
1:16 (27%)
1:16 (37%)
view
15 x 2 buildtools/country_data
buildtools/country_data
filter_country_data.js
make_flag_sprite.js
1:16 (27%)
1:16 (36%)
view
15 x 2 javascript/widgets/handler
javascript/widgets/handler
federatedlinking.js
federatedsignin.js
56:82 (45%)
42:66 (60%)
view
15 x 2 buildtools/country_data
buildtools/country_data
make_country_list_for_readme.js
make_flag_pngs.js
1:16 (41%)
1:16 (37%)
view
15 x 2 javascript/ui/page
javascript/ui/page
passwordlinking.js
passwordsignin.js
89:105 (29%)
108:124 (22%)
view
15 x 2 buildtools/country_data
buildtools/country_data
make_country_list_for_readme.js
make_flag_sprite.js
1:16 (41%)
1:16 (36%)
view
15 x 2 buildtools/country_data
buildtools/country_data
compress_pngs.js
make_country_list_for_readme.js
1:16 (36%)
1:16 (41%)
view
15 x 2 buildtools/country_data
buildtools/country_data
compress_pngs.js
filter_country_data.js
1:16 (36%)
1:16 (27%)
view
15 x 2 buildtools/country_data
buildtools/country_data
filter_country_data.js
make_country_list_for_readme.js
1:16 (27%)
1:16 (41%)
view
15 x 2 buildtools/country_data
buildtools/country_data
make_flag_pngs.js
make_flag_sprite.js
1:16 (37%)
1:16 (36%)
view
14 x 2 javascript/widgets/handler
javascript/widgets/handler
emailnotreceived.js
unsupportedprovider.js
59:77 (36%)
48:66 (42%)
view
14 x 2 javascript/ui/page
javascript/ui/page
anonymoususermismatch.js
differentdeviceerror.js
42:66 (46%)
42:66 (46%)
view
13 x 2 soy
soy
soy
elements.soy
pages.soy
1:13 (2%)
1:13 (1%)
view
Duplicated Units
The list of top 5 duplicated units.
See data for all 5 unit duplicates...
Size#FoldersFilesLinesCode
20 x 2 javascript/widgets
javascript/widgets
config.js
uihandlerconfig.js
620:640 
153:173 
view
20 x 2 javascript/widgets
javascript/widgets
config.js
uihandlerconfig.js
646:666 
181:201 
view
8 x 2 javascript/ui/page
javascript/ui/page
differentdeviceerror.js
anonymoususermismatch.js
46:56 
46:56 
view
8 x 2 javascript/widgets/handler
javascript/widgets/handler
testhelper.js
testhelper.js
914:922 
929:937 
view
6 x 2 javascript/widgets/handler
javascript/widgets/handler
emailnotreceived.js
unsupportedprovider.js
61:67 
50:56 
view