@@ -85,7 +85,7 @@ const Evidence: React.FC = () => {
85
85
const [ search , setSearch ] = useState < string > ( ) ;
86
86
const [ debouncedSearch , setDebouncedSearch ] = useState < string > ( ) ;
87
87
const [ showSpam , setShowSpam ] = useState ( false ) ;
88
- const { data : spamEvidences } = useSpamEvidence ( ) ;
88
+ const { data : spamEvidences } = useSpamEvidence ( disputeData ?. dispute ?. externalDisputeId ?. toString ( ) ) ;
89
89
90
90
const { data } = useEvidences ( disputeData ?. dispute ?. externalDisputeId ?. toString ( ) , debouncedSearch ) ;
91
91
@@ -100,23 +100,11 @@ const Evidence: React.FC = () => {
100
100
latestEvidence . scrollIntoView ( { behavior : "smooth" } ) ;
101
101
} , [ ref ] ) ;
102
102
103
- const flattenedSpamEvidences = useMemo (
104
- ( ) =>
105
- spamEvidences ?. courtv2EvidenceSpamsByDeployment . reduce < string [ ] > ( ( acc , current ) => {
106
- if ( current . dispute === id ) {
107
- acc . push ( current . disputeEvidenceIndex ) ;
108
- return acc ;
109
- }
110
- return acc ;
111
- } , [ ] ) ,
112
- [ id , spamEvidences ]
113
- ) ;
114
-
115
103
const isSpam = useCallback (
116
104
( evidenceId : string ) => {
117
- return Boolean ( flattenedSpamEvidences ?. includes ( evidenceId ) ) ;
105
+ return Boolean ( spamEvidences ?. courtv2EvidenceSpamsByGroupId . evidenceIds ?. includes ( evidenceId ) ) ;
118
106
} ,
119
- [ flattenedSpamEvidences ]
107
+ [ spamEvidences ]
120
108
) ;
121
109
122
110
const evidences = useMemo ( ( ) => {
@@ -131,38 +119,44 @@ const Evidence: React.FC = () => {
131
119
< EvidenceSearch { ...{ search, setSearch, evidenceGroup : disputeData ?. dispute ?. externalDisputeId } } />
132
120
< ScrollButton small Icon = { DownArrow } text = "Scroll to latest" onClick = { scrollToLatest } />
133
121
{ evidences ?. realEvidences ? (
134
- evidences ?. realEvidences . map (
135
- ( { evidence, sender, timestamp, transactionHash, name, description, fileURI, evidenceIndex } ) => (
136
- < EvidenceCard
137
- key = { timestamp }
138
- index = { parseInt ( evidenceIndex ) }
139
- sender = { sender ?. id }
140
- { ...{ evidence, timestamp, transactionHash, name, description, fileURI } }
141
- />
142
- )
143
- )
144
- ) : (
145
- < SkeletonEvidenceCard />
146
- ) }
147
- { evidences ?. spamEvidences . length !== 0 ? (
148
122
< >
149
- < Divider />
150
- { showSpam ? (
151
- evidences ?. spamEvidences . map (
152
- ( { evidence, sender, timestamp, transactionHash, name, description, fileURI, evidenceIndex } ) => (
153
- < EvidenceCard
154
- key = { timestamp }
155
- index = { parseInt ( evidenceIndex ) }
156
- sender = { sender ?. id }
157
- { ...{ evidence, timestamp, transactionHash, name, description, fileURI } }
158
- />
159
- )
123
+ { evidences ?. realEvidences . map (
124
+ ( { evidence, sender, timestamp, transactionHash, name, description, fileURI, evidenceIndex } ) => (
125
+ < EvidenceCard
126
+ key = { timestamp }
127
+ index = { parseInt ( evidenceIndex ) }
128
+ sender = { sender ?. id }
129
+ { ...{ evidence, timestamp, transactionHash, name, description, fileURI } }
130
+ />
160
131
)
161
- ) : (
162
- < SpamLabel onClick = { ( ) => setShowSpam ( true ) } > Show likely spam</ SpamLabel >
163
132
) }
133
+ { spamEvidences && evidences ?. spamEvidences . length !== 0 ? (
134
+ < >
135
+ < Divider />
136
+ { showSpam ? (
137
+ < >
138
+ < SpamLabel onClick = { ( ) => setShowSpam ( false ) } > Hide spam</ SpamLabel >
139
+ { evidences ?. spamEvidences . map (
140
+ ( { evidence, sender, timestamp, transactionHash, name, description, fileURI, evidenceIndex } ) => (
141
+ < EvidenceCard
142
+ key = { timestamp }
143
+ index = { parseInt ( evidenceIndex ) }
144
+ sender = { sender ?. id }
145
+ { ...{ evidence, timestamp, transactionHash, name, description, fileURI } }
146
+ />
147
+ )
148
+ ) }
149
+ </ >
150
+ ) : (
151
+ < SpamLabel onClick = { ( ) => setShowSpam ( true ) } > Show likely spam</ SpamLabel >
152
+ ) }
153
+ </ >
154
+ ) : null }
164
155
</ >
165
- ) : null }
156
+ ) : (
157
+ < SkeletonEvidenceCard />
158
+ ) }
159
+
166
160
{ data && data . evidences . length === 0 ? < StyledLabel > There is no evidence submitted yet</ StyledLabel > : null }
167
161
</ Container >
168
162
) ;
0 commit comments