1
- import { useMemo , useState } from 'react'
1
+ import { useState } from 'react'
2
2
3
3
import { SortableTableHeaderCell } from '@Common/SortableTableHeaderCell'
4
4
import { Tooltip } from '@Common/Tooltip'
@@ -8,6 +8,7 @@ import { Node } from '@Shared/types'
8
8
import { Button , ButtonStyleType , ButtonVariantType } from '../Button'
9
9
import { NodeFilters , StatusFilterButtonComponent } from '../CICDHistory'
10
10
import { Icon } from '../Icon'
11
+ import { ShowMoreText } from '../ShowMoreText'
11
12
import { AppStatusContentProps } from './types'
12
13
import { getFlattenedNodesFromAppDetails , getResourceKey } from './utils'
13
14
@@ -24,24 +25,16 @@ const AppStatusContent = ({
24
25
const [ currentFilter , setCurrentFilter ] = useState < string > ( ALL_RESOURCE_KIND_FILTER )
25
26
const { appId, environmentId : envId } = appDetails
26
27
27
- const flattenedNodes = useMemo (
28
- ( ) =>
29
- getFlattenedNodesFromAppDetails ( {
30
- appDetails,
31
- filterHealthyNodes,
32
- } ) ,
33
- [ appDetails , filterHealthyNodes ] ,
34
- )
28
+ const flattenedNodes = getFlattenedNodesFromAppDetails ( {
29
+ appDetails,
30
+ filterHealthyNodes,
31
+ } )
35
32
36
- const filteredFlattenedNodes = useMemo (
37
- ( ) =>
38
- flattenedNodes . filter (
39
- ( nodeDetails ) =>
40
- currentFilter === ALL_RESOURCE_KIND_FILTER ||
41
- ( currentFilter === NodeFilters . drifted && nodeDetails . hasDrift ) ||
42
- nodeDetails . health . status ?. toLowerCase ( ) === currentFilter ,
43
- ) ,
44
- [ flattenedNodes , currentFilter ] ,
33
+ const filteredFlattenedNodes = flattenedNodes . filter (
34
+ ( nodeDetails ) =>
35
+ currentFilter === ALL_RESOURCE_KIND_FILTER ||
36
+ ( currentFilter === NodeFilters . drifted && nodeDetails . hasDrift ) ||
37
+ nodeDetails . health . status ?. toLowerCase ( ) === currentFilter ,
45
38
)
46
39
47
40
const handleFilterClick = ( selectedFilter : string ) => {
@@ -90,11 +83,13 @@ const AppStatusContent = ({
90
83
91
84
< span className = "dc__word-break" > { nodeDetails . name } </ span >
92
85
93
- < div
94
- className = { `app-summary__status-name f-${ getNodeStatus ( nodeDetails ) ?. toLowerCase ( ) || '' } dc__first-letter-capitalize--imp fs-13 fw-4 lh-20 dc__word-break` }
95
- >
96
- { getNodeStatus ( nodeDetails ) }
97
- </ div >
86
+ < Tooltip content = { getNodeStatus ( nodeDetails ) } >
87
+ < span
88
+ className = { `app-summary__status-name f-${ getNodeStatus ( nodeDetails ) ?. toLowerCase ( ) || '' } dc__first-letter-capitalize--imp fs-13 fw-4 lh-20 dc__ellipsis-right` }
89
+ >
90
+ { getNodeStatus ( nodeDetails ) }
91
+ </ span >
92
+ </ Tooltip >
98
93
99
94
< div className = "flexbox-col dc__gap-4" >
100
95
{ handleShowConfigDriftModal && nodeDetails . hasDrift && (
@@ -112,7 +107,7 @@ const AppStatusContent = ({
112
107
) }
113
108
</ div >
114
109
) }
115
- < div className = "dc__word-break" > { getNodeMessage ( nodeDetails ) } </ div >
110
+ < ShowMoreText key = { getNodeMessage ( nodeDetails ) } text = { getNodeMessage ( nodeDetails ) } / >
116
111
</ div >
117
112
</ div >
118
113
) ) }
0 commit comments