Skip to content

Commit b06acb1

Browse files
authored
Merge pull request #1612 from devtron-labs/resource-browser-search
fix: Service Port naming & Resource browser search
2 parents 25b99ce + de3f788 commit b06acb1

File tree

4 files changed

+32
-35
lines changed

4 files changed

+32
-35
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"private": true,
55
"homepage": "/dashboard",
66
"dependencies": {
7-
"@devtron-labs/devtron-fe-common-lib": "0.0.60",
7+
"@devtron-labs/devtron-fe-common-lib": "0.0.61",
88
"@rjsf/core": "^5.13.3",
99
"@rjsf/utils": "^5.13.3",
1010
"@rjsf/validator-ajv8": "^5.13.3",

src/components/ClusterNodes/ClusterSelectionList.tsx

Lines changed: 26 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
import React, { useState, useEffect } from 'react'
22
import { useHistory, useLocation } from 'react-router-dom'
3-
import { ReactComponent as Search } from '../../assets/icons/ic-search.svg'
4-
import { ReactComponent as Clear } from '../../assets/icons/ic-error.svg'
53
import { handleUTCTime } from '../common'
6-
import { Progressing } from '@devtron-labs/devtron-fe-common-lib'
4+
import { Progressing, SearchBar } from '@devtron-labs/devtron-fe-common-lib'
75
import { ClusterDetail } from './types'
86
import { ReactComponent as Error } from '../../assets/icons/ic-error-exclamation.svg'
97
import { ReactComponent as Success } from '../../assets/icons/appstatus/healthy.svg'
@@ -73,37 +71,36 @@ export default function ClusterSelectionList({
7371
setSearchText('')
7472
}
7573

76-
const handleFilterKeyPress = (event): void => {
77-
const theKeyCode = event.key
78-
if (theKeyCode === 'Enter') {
79-
handleFilterChanges(event.target.value)
74+
const handleFilterKeyPress = (value): void => {
75+
handleFilterChanges(value)
8076
setSearchApplied(true)
81-
} else if (theKeyCode === 'Backspace' && searchText.length === 1) {
82-
clearSearch()
83-
}
77+
}
78+
79+
const handleSearchChange = (value): void => {
80+
setSearchText(value.trim())
81+
}
82+
83+
const handleOnBlur = (event): void => {
84+
event.stopPropagation()
85+
let _searchText = event.target.value
86+
_searchText = _searchText?.trim()
87+
handleFilterChanges(_searchText)
88+
setSearchText(_searchText)
8489
}
8590

8691
const renderSearch = (): JSX.Element => {
8792
return (
88-
<div className="search dc__position-rel margin-right-0 en-2 bw-1 br-4 h-32">
89-
<Search className="search__icon icon-dim-18" />
90-
<input
91-
type="text"
92-
placeholder="Search clusters"
93-
value={searchText}
94-
className="search__input"
95-
onChange={(event) => {
96-
setSearchText(event.target.value)
97-
}}
98-
onKeyDown={handleFilterKeyPress}
99-
disabled={clusterListLoader}
100-
/>
101-
{searchApplied && (
102-
<button className="search__clear-button" type="button" onClick={clearSearch}>
103-
<Clear className="icon-dim-18 icon-n4 dc__vertical-align-middle" />
104-
</button>
105-
)}
106-
</div>
93+
<SearchBar
94+
initialSearchText={searchText}
95+
handleSearchChange={handleSearchChange}
96+
handleEnter={handleFilterKeyPress}
97+
containerClassName="w-250-imp"
98+
inputProps={{
99+
placeholder: 'Search clusters',
100+
autoFocus: true,
101+
disabled: minLoader,
102+
}}
103+
/>
107104
)
108105
}
109106

src/components/ResourceBrowser/ResourceList/ResourceList.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1080,7 +1080,7 @@ export default function ResourceList() {
10801080
}
10811081
return (
10821082
<ShortcutProvider>
1083-
<div className="resource-browser-container h-100">
1083+
<div className="resource-browser-container h-100 bcn-0">
10841084
<PageHeader
10851085
isBreadcrumbs={!!clusterId}
10861086
breadCrumbs={renderBreadcrumbs}

src/components/v2/appDetails/k8Resource/nodeType/Node.component.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -213,11 +213,11 @@ function NodeComponent({ handleFocusTabs, externalLinks, monitoringTools, isDevt
213213
return (
214214
<div className="flex left cn-9 m-0 dc__no-decore">
215215
<div className="" key={node.name}>
216-
{node.name}:{node.namespace}:{val}
216+
{node.name}.{node.namespace}:{val}
217217
<Clipboard
218218
className="ml-0 resource-action-tabs__clipboard fs-13 dc__truncate-text cursor pt-8"
219219
onClick={(event) => {
220-
toggleClipBoardPort(event, `${node.name}:${node.namespace}:${val}`)
220+
toggleClipBoardPort(event, `${node.name}.${node.namespace}:${val}`)
221221
}}
222222
/>
223223
</div>
@@ -241,7 +241,7 @@ function NodeComponent({ handleFocusTabs, externalLinks, monitoringTools, isDevt
241241
<Clipboard
242242
className="resource-action-tabs__clipboard icon-dim-12 pointer ml-8 mr-8"
243243
onClick={(event) => {
244-
toggleClipBoardPort(event, `${node.name}:${node.namespace}:${node.port[0]}`)
244+
toggleClipBoardPort(event, `${node.name}.${node.namespace}:${node.port[0]}`)
245245
}}
246246
/>
247247
</span>
@@ -442,7 +442,7 @@ function NodeComponent({ handleFocusTabs, externalLinks, monitoringTools, isDevt
442442
</div>
443443
</div>
444444
{params.nodeType === NodeType.Service.toLowerCase() && node.kind !== "Endpoints" && node.kind !== "EndpointSlice" && (
445-
<div className={'col-5 pt-9 pb-9 flex left cn-9 dc__hover-icon'}>
445+
<div className="col-5 pt-9 pb-9 flex left cn-9 dc__hover-icon">
446446
{portNumberPlaceHolder(node)}
447447
{node.port > 1 ? renderClipboardInteraction(nodeName) : null}
448448
</div>

0 commit comments

Comments
 (0)