aws-samples / amazon-connect-custom-ccp
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
  • 19% duplication:
    • 2,370 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 467 duplicated lines
  • 89 duplicates
system19% (467 lines)
Duplication per Extension
jsx17% (234 lines)
js22% (233 lines)
Duplication per Component (primary)
ccp-ui/src/components16% (201 lines)
ccp-ui/src17% (47 lines)
ccp-cdk-infra/lib/lambdaCode/getIntentMetrics62% (44 lines)
ccp-cdk-infra/lib/lambdaCode/getCustomersInQueue92% (38 lines)
ccp-cdk-infra/lib/lambdaCode/newConnectId38% (37 lines)
ccp-cdk-infra/lib/lambdaCode/getActiveAgents38% (20 lines)
ccp-cdk-infra/lib/lambdaCode/getLongestWaitTime85% (18 lines)
ccp-cdk-infra/lib/lambdaCode/updateIntentTable13% (18 lines)
ccp-cdk-infra/lib/lambdaCode/updateRecordingStatus21% (18 lines)
ccp-cdk-infra/lib/lambdaCode/getAvrAbandTime100% (10 lines)
ccp-cdk-infra/lib/lambdaCode/getAvrQueueTime100% (10 lines)
ccp-cdk-infra/lib/lambdaCode/updateContactTraceRecord16% (6 lines)
ccp-ui/public0% (0 lines)
ccp-cdk-infra/lib0% (0 lines)
ccp-cdk-infra/lib/lambdaCode/getMissedCalls0% (0 lines)
ccp-cdk-infra/lib/lambdaCode/populateDB0% (0 lines)
ccp-cdk-infra/lib/lambdaCode/getCallIntents0% (0 lines)

Duplication Between Components (50+ lines)

G ccp-ui/src/components ccp-ui/src/components ccp-ui/src ccp-ui/src ccp-ui/src/components--ccp-ui/src 186 ccp-cdk-infra/lib/lambdaCode/getIntentMetrics ccp-cdk-infra/lib/lambdaCode/getIntentMetrics ccp-cdk-infra/lib/lambdaCode/newConnectId ccp-cdk-infra/lib/lambdaCode/newConnectId ccp-cdk-infra/lib/lambdaCode/getIntentMetrics--ccp-cdk-infra/lib/lambdaCode/newConnectId 50

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 89 duplicates...
Size#FoldersFilesLinesCode
20 x 2 ccp-cdk-infra/lib/lambdaCode/getActiveAgents
ccp-cdk-infra/lib/lambdaCode/getCustomersInQueue
index.js
index.js
44:64 (38%)
29:49 (48%)
view
18 x 2 ccp-ui/src/components
ccp-ui/src/components
ContactDispositionSection.jsx
CustomerInfo.jsx
1:19 (26%)
1:19 (9%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
CustomerInfo.jsx
TaggingModal.jsx
1:17 (9%)
1:17 (8%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
CustomerInfo.jsx
RecordingActions.jsx
1:17 (9%)
1:17 (10%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
AppLayout.jsx
RecordingActions.jsx
1:17 (45%)
1:17 (10%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src
ActionsSection.jsx
index.jsx
1:17 (9%)
1:17 (54%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
ActionsSection.jsx
ContactDispositionSection.jsx
1:17 (9%)
1:17 (24%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
StatisticsModal.jsx
TaggingModal.jsx
1:17 (6%)
1:17 (8%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
Checklist.jsx
RecordingActions.jsx
1:17 (20%)
1:17 (10%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src
RecordingActions.jsx
index.jsx
1:17 (10%)
1:17 (54%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
ActionsSection.jsx
StatisticsModal.jsx
1:17 (9%)
1:17 (6%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
Checklist.jsx
ContactDispositionSection.jsx
1:17 (20%)
1:17 (24%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src
StatisticsModal.jsx
index.jsx
1:17 (6%)
1:17 (54%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
AppLayout.jsx
Checklist.jsx
1:17 (45%)
1:17 (20%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
ContactDispositionSection.jsx
StatisticsModal.jsx
1:17 (24%)
1:17 (6%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
ActionsSection.jsx
Dashboard.jsx
1:17 (9%)
1:17 (47%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
Checklist.jsx
Dashboard.jsx
1:17 (20%)
1:17 (47%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src
TaggingModal.jsx
index.jsx
1:17 (8%)
1:17 (54%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
ActionsSection.jsx
AppLayout.jsx
1:17 (9%)
1:17 (45%)
view
17 x 2 ccp-ui/src/components
ccp-ui/src/components
AppLayout.jsx
Dashboard.jsx
1:17 (45%)
1:17 (47%)
view